ChangeExpiredPassword(NewPassword: String);
NewPassword – новый пароль.
Метод ChangeExpiredPassword изменяет пароль пользователя на заданный в параметре.
При данной смене пароля парольная политика репозитория (IMetabasePasswordPolicy) не проверяется, также не проверяется запрет на смену пароля пользователем (IMetabaseUser.CannotChangePassword). При успешной смене пароля и подключении к репозиторию в протокол доступа заносится соответствующая запись, при неудачной смене пароля генерируется соответствующая исключительная ситуация с подробностями в виде ошибки СУБД. Если предыдущий пароль пользователя был зашифрованным, то и при данной смене пароля новый пароль тоже будет зашифрованным.
Sub UserProc;
Var
MB: IMetabase;
Driv: IDalDriver;
ConnectDesc: IDalConnectionDescriptor;
ConnectDescParams: IDalConnectionDescriptorParams;
connection_ext : IDalConnectionExt;
connection_ext_desc: IDalConnectionDescriptorExt;
dal_con :IDalConnection;
Begin
MB := MetabaseClass.Active;
Driv := New DalOrcl8Driver.Create;
ConnectDesc := Driv.CreateDescriptor;
ConnectDescParams := ConnectDesc.Params;
ConnectDescParams.Find("User Name").Value := "student_p5";
ConnectDescParams.Find("Password").Value := "student_p5";
ConnectDescParams.Find("Host BSTR").Value := "test";
ConnectDescParams.Find("Schema").Value := "student_p5";
connection_ext_desc := ConnectDesc As IDalConnectionDescriptorExt;
dal_con := connection_ext_desc.CreateConnectionExt(True);
connection_ext := dal_con As IDalConnectionExt;
If connection_ext.PasswordExpired Then
connection_ext.ChangeExpiredPassword("student00");
End If;
End Sub UserProc;
После выполнения примера будет создано подключение к БД, в случае если срок действия пароля пользователя истек, то он будет изменен.
См. также: