OpenMetabase

Синтаксис

OpenMetabaseResult OpenMetabase(MbDef tDef, UserCreds tCreds, [OpenMetabaseArg tArg])

Параметры

tDef. Описание репозитория, к которому осуществляется подключение.

tCreds. Учетные данные пользователя, под которым осуществляется подключение.

tArg. Параметры подключения.

Описание

Операция OpenMetabase осуществляет подключение к репозиторию и возвращает моникёр соединения с репозиторием.

Комментарии

Операция позволяет выполнить следующие действия:

Подключение к репозиторию может осуществляться различными способами. Для подключения необходимо указать информацию о репозитории и параметры аутентификации пользователя. Для указания репозитория, к которому осуществляется подключение, доступны следующие варианты:

Для аутентификации пользователей доступны следующие способы (более подробное описание представлено ниже):

Параметры аутентификации указываются в поле tCreds.

Результатом выполнения операции будут:

Примечание. Параметры сессии хранятся в памяти BI-сервера или на сервере состояний, если в конфигурации определена группа настроек StateServer. Если группа настроек StateServer определена, но сам сервер состояний отключен, то идентификатор сессии сгенерирован не будет.

Полученный моникёр в дальнейшем будет использоваться в следующих случаях:

Ключ сессии sessKey может использоваться, например, при работе с протоколом доступа для получения списка операций, выполненных в рамках сессии.

Идентификатор sessCookie, в отличие от моникёра, не используется для работы с репозиторием, а используется только для идентификации существующих сессий на сервере. Если полученный идентификатор сохранить и в дальнейшем, при новом подключении, указать в качестве значения поля tArg.sessCookie, то на BI-сервере будет осуществлена проверка на наличие сессии с таким же идентификатором. Если сессия существует, то будет осуществлена проверка на возможность её повторного использования. Необходимыми условиями для повторного использования сессии являются:

Способы аутентификации

Прямое указание учетных данных

Учетные данные задаются в полях tCreds.user и tCreds.pass.

Подключение с использованием цифровой подписи

Для подключения с использованием цифровой подписи необходимо предварительно подготовить репозиторий следующим образом:

Примечание. Если BI-сервер развернут на базе веб-сервера IIS, то пул BI-сервера должен быть запущен из-под того пользователя, под которым запускали утилиту PP.Util.exe.

Перед подключением необходимо выполнить операцию GetVerifierCode для получения блока данных, которые клиент должен будет подписать цифровой подписью. Подписанные данные необходимо указать в поле tCreds.verifier.signature, в поле tCreds.verifier.cookie необходимо указать случайное число, которое также будет получено в результате выполнения операции GetVerifierCode. В поле tCreds.verifier.user указывается пользователь, под которым осуществляется подключение. Этот пользователь может отсутствовать в СУБД репозитория и менеджере безопасности.

Примечание. Если указан пользователь, который отсутствует везде, то он будет создан в менеджере безопасности репозитория. Если было задано поле tCreds.verifier.role, то пользователь будет включен в указанную группу и будет обладать соответствующими правами. Если поле не задано, то пользователь будет включен во Встроенную группу пользователей. При необходимости права созданного пользователя можно изменить с помощью операции SetMbSec.

В поле tCreds.verifier.mbUser необходимо указать пользователя, под которым будет осуществляться фактическое подключение к базе данных репозитория. Данный пользователь должен существовать в СУБД и обладать правами на вход в репозиторий. Также в поле tCreds.verifier.certificate необходимо указать идентификатор сертификата, который будет использоваться для проверки цифровой подписи. Данный сертификат должен быть сохранен в репозитории таким образом, как это было описано выше. В поле tCreds.pass задается пустая строка, данное поле не используется при подключении с использованием цифровой подписи.

Интегрированная доменная аутентификация

Для использования интегрированной доменной аутентификации пользователя поле tCreds.user не указывается, а в поле tCreds.pass необходимо указать пустое значение. При этом для подключения будут переданы учетные данные текущего пользователя операционной системы.

Пример

Различные варианты использования операции приведены в следующих примерах:

Наименование примера

См. также:

Общие операции