CheckAndAuditLabel(Operation: Integer; Comment: String; Var Label: ISecurityDocumentLabel);
Operation. Маска, определяющая операции, наличие прав на которые, необходимо проверить для текущего пользователя. Для формирования значения маски необходимо использовать значения перечислимого типа MetabaseObjectPredefinedRights. В этом перечислении содержатся основные и дополнительные операции, на которые можно раздавать права и вести аудит доступа. Для определенных классов объектов доступны специфические операции. Для использования специфических операций, в зависимости от класса объекта, в маске можно использовать значения следующих перечислений:
CalculatedCubeSpecificRights - специфические операции, доступные для вычисляемых кубов;
CubeLoaderSpecificRights - специфические операции, доступные для загрузчика данных в куб;
CubeSpecificRights - специфические операции, доступные для различных видов кубо;
CustomObjectSpecificRights - специфические операции, доступные для объектов пользовательских классов;
DataBaseSpecificRights - специфические операции, доступные для объекта репозитория - База данных;
DictionarySpecificRights - специфические операции, доступные для объектов репозитория - Справочник НСИ и Составной справочник НСИ;
MDCalcSpecificRights - специфические операции, доступные для объекта репозитория - Многомерный расчет на сервере БД;
ProblemSpecificRights - специфические операции, доступные для объекта контейнера моделирования - Задача моделирования;
ProcedureSpecificRights - специфические операции, доступные для объекта репозитория - Процедура;
ScenarioDimensionSpecificRights - специфические операции, доступные для объекта репозитория - Сценарий моделирования;
TableSpecificRights - специфические операции, доступные для следующих объектов репозитория - Таблица, Представление, Журнал, Присоединенная таблица;
ValidationSpecificRights - специфические операции, доступные для объекта репозитория - Правило валидации и Группа валидаций.
Comment. Комментарий, который заносится в протокол доступа;
Label. Переменная, в которую будут помещены параметры метки безопасности.
Метод CheckAndAuditLabel проверяет права доступа текущего пользователя на указанные операции и заносит запись в протокол доступа с указанным комментарием, а также вычисляет параметры метки безопасности, используемой при печати и экспорте объектов репозитория.
Метка безопасности вычисляется при включенном мандатном доступе к объектам.
Если у текущего пользователя отсутствуют права хотя бы на одну из проверяемых операций, то в протокол доступа будет занесена запись с неуспешным результатом и будет сгенерирована исключительная ситуация.
Для выполнения примера предполагается наличие в репозитории объекта с идентификатором «Obj_1».
Добавьте ссылку на системную сборку Metabase.
Sub UserProc;После выполнения примера будет осуществлена проверка наличия прав у текущего пользователя на удаление и изменение прав доступа объекта «Obj_1». В протокол доступа будет добавлена соответствующая запись. Если в репозитории включен мандатный контроль доступа и для объекта выставлен уровень, для которого предусмотрена маркировка объектов при экспорте и печати, то в переменной «Lab» будут содержаться параметры метки безопасности, используемой для маркировки. Данные параметры будут выведены в консоль среды разработки.
См. также: