Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как отследить изменение пароля?  [new]
Serge Gusev
Member

Откуда:
Сообщений: 11
Здравствуйте.

Существует ли возможность средствами T_SQL:

1. Создать логин с незашифрованным паролем?

@encryptopt = 'skip_encryption' пробовал, не получилось

2. Прочитать значение пароля из базы master.syslogins в незашифрованном виде?

3. Сравнить переданный пароль с сохраненным в базе master.syslogins?

Пробовал такой вариант:

SET @Password = pwdencrypt(@Password)
SELECT @OldPassword = password FROM master.dbo.syslogins WHERE loginname = @LoginID

IF @Password <> @OldPassword
BEGIN
Всегда попадаю сюда, хотя пароли должны быть одинаковы.
END

Заранее благодарен за советы и ссылки.

Сергей Гусев
21 авг 03, 17:55    [310375]     Ответить | Цитировать Сообщить модератору
 Re: Как отследить изменение пароля?  [new]
doctor
Member

Откуда: Piter
Сообщений: 73
1. Думаю используя sp_addLogin - нет
************
else if @encryptopt <> 'skip_encryption'
begin
raiserror(15600,-1,-1,'sp_addlogin')
return 1
end
************

2. У Jimmers'a на сайте посмотрите
3.
Если я правильно помню , для сравнения надo исрользовать pwdcompare
что-то типа
if exists(select 1 from master.dbo.syslogins WHERE loginname = @LoginID and
pwdcompare(@Password , @OldPassword ) = 1
begin
***********
end
и закоментируйте --SET @Password = pwdencrypt(@Password)
Поковыряйтесь в процедуре sp_password
21 авг 03, 19:28    [310478]     Ответить | Цитировать Сообщить модератору
 Re: Как отследить изменение пароля?  [new]
Serge Gusev
Member

Откуда:
Сообщений: 11
Спасибо, doctor. Проблема решена.
22 авг 03, 15:28    [311784]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить