LogonAsCurrentUser: Boolean;
Свойство LogonAsCurrentUser определяет, будет ли осуществлено подключение под текущим доменным пользователем.
По умолчанию свойство имеет значение True и подключение осуществляется с учетными данными текущего доменного пользователя. В случае установки свойства в False для подключения к схеме необходимо определить свойства Domain, UserName и Password.
Для выполнения примера на форме должны быть расположены EditBox1 и EditBox2 типа EditBox. В схеме должна быть таблица с идентификатором Table. Доменный пользователь, под которым осуществляется подключение, должен быть добавлен в список пользователей репозитория и иметь привилегии «Вход в систему» и «Право чтения и открытия всех объектов».
Sub UserProc;
Var
MbDef: IMetabaseDefinition;
Package: ISecurityPackage;
dc:IDomainCredentials;
Mb: IMetabase;
MbManager: IMetabaseManager;
Table : ITable;
Field : ITableField;
Begin
Mb := Null;
MbManager := MetabaseManagerFactory.Active;
MbDef := MbManager.Definitions.FindById("P5_MS");
Debug.AssertMsg(MbDef <> Null, "Описание метабазы не найдено");
Package := MbManager.Packs.FindById(MbDef.SecurityPackage).Package;
dc := Package.CreateCredentials(AuthenticationMode.Domain) As IDomainCredentials;
dc.LogonAsCurrentUser := False;
dc.Domain := "PROGNOZ";
dc.UserName := EditBox1.Text;
dc.Password := EditBox2.Text;
Mb := MbDef.Open(dc,ApplicationMode.Win,LocaleCodeID.Russian);
WinApplication.InformationBox("Подключение осуществлено");
Table := Mb.ItemById ("Table").Bind As ITable;
For Each Field In Table.Fields Do
Debug.WriteLine(Field.Name);
End For;
End Sub UserProc;
При указании верного пароля и имени пользователя будет осуществлено подключение к схеме "P5_MS", будет выдано сообщение об этом. В окно консоли будут выведены наименования полей таблицы.
См. также: