PerformLogonRoleO(
Options: Integer;
LogonData: ISecurityPackageLogonData;
UserCredentials: ICredentials;
MetaKey: Integer;
ObjectKey: Integer): ISecurityConnection;
Options - параметр соединения. В текущей реализации определяет, будут ли фиксироваться ошибки аудита в протоколе доступа. Если передавать значение 1, то при возникновении ошибки, соответствующая запись будет добавляться в протокол доступа.
LogonData - параметры модуля безопасности, используемые при подключении.
UserCredentials - учетные данные пользователя, используемые при подключении.
MetaKey - параметр, зарезервированный для внутреннего использования. В качестве значения необходимо передавать "0".
ObjectKey - параметр, зарезервированный для внутреннего использования. В качестве значения необходимо передавать "0".
Метод PerformLogonRoleO создает новое соединение с сервером БД, используя указанные значения параметров, с проверкой роли приложения.
Sub Main;
Var
Package: ISecurityPackage;
MSSQLSPLD: IPrimaryMsSqlSPLD;
Cred: IPasswordCredentials;
Connection: ISecurityConnection;
ColCur: IDalColumns;
Field: IDalCursorField;
Begin
Package := New StandardSecurityPackage.Create;
MSSQLSPLD := Package.CreateLogonData("MSSQL2008") As IPrimaryMsSqlSPLD;
MSSQLSPLD.Database := "Test_Schema_MSSQL";
MSSQLSPLD.Server := "Test_MSSQL";
Cred := Package.CreateCredentials(AuthenticationMode.Role) As IPasswordCredentials;
Cred.UserName := "Test_Schema_MSSQL";
Cred.Password := "Test_Schema_MSSQL";
Connection := Package.PerformLogonRoleO(1, MSSQLSPLD, Cred, 0, 0);
ColCur := Connection.Columns("Table_1");
While Not ColCur.Eof Do
For Each Field In ColCur.Fields Do
Debug.WriteLine(Field.Name + " " + Field.Value);
End For;
Debug.WriteLine("");
ColCur.Next;
End While;
ColCur.Close;
End Sub Main;
После выполнения примера будет осуществлено новое подключение к схеме "Test_Schema_MSSQL", расположенной на сервере "Test_MSSQL", с указанными учетными данными. Подключение осуществляется с проверкой роли указанного пользователя. Будет получена и выведена в консоль среды разработки системная информация о таблице "Table_1", если таковая имеется в данной схеме.
См. также: