Перейти к основному содержимому

КонтрольДоступа

Стд::КонтрольДоступа::КонтрольДоступа Тип-одиночка Доступность: Сервер

Сервис контроля доступа.

Сравнение ссылочное

Иерархия типа

Базовые типы: Объект, Одиночка


Методы

ЕстьПраво

Доступность: Сервер

ЕстьПраво(
Право: СистемноеПраво,
Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено
): Булево
Перегрузка:
ЕстьПраво(Объект: Объект, Право: ПравоНаЭлемент, Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено): Булево

Возвращает признак наличия права Право у пользователя. Проверка осуществляется в текущем контексте прав доступа, если не указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять проверку.

Исключения

ИсключениеНедопустимыйАргумент - если пользователь не существует.

Примеры

метод ДоступнаКонсольЗапросов(): Булево
возврат КонтрольДоступа.ЕстьПраво(ВстроенноеПраво.КонсольЗапросов)
;

См. также

ПроверитьПраво


ЕстьПраво

Доступность: Сервер

ЕстьПраво(
Объект: Объект,
Право: ПравоНаЭлемент,
Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено
): Булево
Перегрузка:
ЕстьПраво(Право: СистемноеПраво, Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено): Булево

Возвращает признак наличия права Право на объект Объект. Для ссылочных сущностей в качестве объекта может передаваться ссылка. Также в качестве объекта могут передаваться данные для расчета разрешений в случае, если для объектной сущности включен расчет разрешений доступа для каждого объекта. Если в качестве объекта передан Тип сущности или ссылки, то проверяются права на элемент проекта, породившего этот тип. Проверка осуществляется в текущем контексте прав доступа, если не указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять проверку. В случае, если для сущности предусмотрен расчет разрешений доступа и требуется проверить наличие права на еще не записанную сущность - в качестве объекта нужно передать саму сущность или данные для расчета разрешений данной сущности. Если права не были рассчитаны ранее - они будут рассчитаны с помощью вызова обработчика ВычислитьРазрешенияДоступаДляОбъектов.

Исключения

ИсключениеНедопустимыйАргумент - если объект не поддерживает указанные права или пользователь не существует.

Примеры

метод ДоступноУдаление(Ссылка: Справочник.Ссылка): Булево
возврат КонтрольДоступа.ЕстьПраво(Ссылка, Сущность.Право.Удаление)
;

метод Демонстрация(Ссылка: Справочник.Ссылка)
// Проверить право на объект
КонтрольДоступа.ЕстьПраво(Ссылка, Сущность.Право.Удаление)
КонтрольДоступа.ЕстьПраво(Ссылка.ЗагрузитьОбъект(), Сущность.Право.Удаление)

// Проверить право на элемент проекта, породившего тип
КонтрольДоступа.ЕстьПраво(Тип<Справочник>, Сущность.Право.Удаление)
КонтрольДоступа.ЕстьПраво(Тип<Справочник.Ссылка>, Сущность.Право.Удаление)
КонтрольДоступа.ЕстьПраво(Тип<Справочник.Объект>, Сущность.Право.Удаление)
;

См. также

ПроверитьПраво


ПолучитьПрава

Доступность: Сервер

ПолучитьПрава(
Объект: Объект,
Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено
): ЧитаемоеМножество<ПравоНаЭлемент>
Вызов метода возможен только из исходного и пользовательского контекста доступа, либо в случае если указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять получение прав. Также вызов метода невозможен из режима отложенного расчета прав доступа (см. Начать).

Возвращает текущие права на указанный объект Объект. Для ссылочных сущностей в качестве объекта может передаваться ссылка. Также в качестве объекта могут передаваться данные для расчета разрешений в случае, если для объектной сущности включен расчет разрешений доступа для каждого объекта. Если в качестве объекта передан Тип сущности или ссылки, то возвращаются права на элемент проекта, породившего этот тип. Получение прав осуществляется в текущем контексте прав доступа, если не указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять получение прав. В случае, если для сущности предусмотрен расчет разрешений доступа и требуется получить права на еще не записанную сущность - в качестве объекта нужно передать саму сущность или данные для расчета разрешений данной сущности. Если права не были рассчитаны ранее - они будут рассчитаны с помощью вызова обработчика ВычислитьРазрешенияДоступаДляОбъектов.

Исключения

ИсключениеНедопустимыйАргумент - если пользователь не существует. ИсключениеНедопустимоеСостояние - если метод вызван не из пользовательского контекста и не указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять получение прав. Исключение также выбрасывается, если метод вызван из режима отложенного расчета прав доступа.

Примеры

метод Демонстрация(Ссылка: Справочник.Ссылка)
// Проверить право на объект
КонтрольДоступа.ПолучитьПрава(Ссылка)
КонтрольДоступа.ПолучитьПрава(Ссылка.ЗагрузитьОбъект())

// Проверить право на элемент проекта, породившего тип
КонтрольДоступа.ПолучитьПрава(Тип<Справочник>)
КонтрольДоступа.ПолучитьПрава(Тип<Справочник.Ссылка>)
КонтрольДоступа.ПолучитьПрава(Тип<Справочник.Объект>)
;

ПолучитьРазрешенияДоступа

Доступность: Сервер

ПолучитьРазрешенияДоступа(Объект: Объект): Массив<РазрешениеДоступа>
Вызов метода невозможен из режима отложенного расчета прав доступа (см. Начать).

Возвращает массив разрешений доступа, соответствующих объекту Объект. Для ссылочных сущностей в качестве объекта может передаваться ссылка. Также в качестве объекта могут передаваться данные для расчета разрешений в случае, если для объектной сущности включен расчет разрешений доступа для каждого объекта. Если в качестве объекта передан Тип сущности или ссылки, то возвращаются разрешения на элемент проекта, породившего этот тип. В случае, если для сущности предусмотрен расчет разрешений доступа и требуется получить разрешения доступа для еще не записанной сущность - в качестве объекта нужно передать саму сущность или данные для расчета разрешений данной сущности. Если права не были рассчитаны ранее - они будут рассчитаны с помощью вызова обработчика ВычислитьРазрешенияДоступаДляОбъектов.

Исключения

ИсключениеНедопустимыйАргумент - если объект не поддерживает настройку прав. ИсключениеНедопустимоеСостояние - если метод вызван из режима отложенного расчета прав доступа.

Примеры

метод Демонстрация(Ссылка: Справочник.Ссылка)
// Проверить право на объект
КонтрольДоступа.ПолучитьРазрешенияДоступа(Ссылка)
КонтрольДоступа.ПолучитьРазрешенияДоступа(Ссылка.ЗагрузитьОбъект())

// Проверить право на элемент проекта, породившего тип
КонтрольДоступа.ПолучитьРазрешенияДоступа(Тип<Справочник>)
КонтрольДоступа.ПолучитьРазрешенияДоступа(Тип<Справочник.Ссылка>)
КонтрольДоступа.ПолучитьРазрешенияДоступа(Тип<Справочник.Объект>)
;

ПолучитьСистемныеПрава

Доступность: Сервер

ПолучитьСистемныеПрава(Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено): ЧитаемоеМножество<СистемноеПраво>
Вызов метода возможен только из исходного и пользовательского контекста доступа, либо в случае если указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять получение системных прав. Также вызов метода невозможен из режима отложенного расчета прав доступа (см. Начать).

Возвращает текущие системные права. Получение прав осуществляется в текущем контексте прав доступа, если не указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять получение системных прав.

Исключения

ИсключениеНедопустимыйАргумент - если пользователь не существует. ИсключениеНедопустимоеСостояние - если метод вызван не из пользовательского контекста и не указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять получение прав. Исключение также выбрасывается, если метод вызван из режима отложенного расчета прав доступа.


ПолучитьСистемныеРазрешенияДоступа

Доступность: Сервер

ПолучитьСистемныеРазрешенияДоступа(): Массив<РазрешениеДоступа>
Вызов метода невозможен из режима отложенного расчета прав доступа (см. Начать).

Возвращает массив всех системных разрешений доступа.

Исключения

ИсключениеНедопустимоеСостояние - если метод вызван из режима отложенного расчета прав доступа.


ПроверитьПраво

Доступность: Сервер

ПроверитьПраво(
Право: СистемноеПраво,
Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено)
Перегрузка:
ПроверитьПраво(Объект: Объект, Право: ПравоНаЭлемент, Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено)

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

Исключения

ИсключениеДоступЗапрещен - если у пользователя нет соответствующего права. ИсключениеНедопустимыйАргумент - если пользователь не существует.

См. также

ЕстьПраво


ПроверитьПраво

Доступность: Сервер

ПроверитьПраво(
Объект: Объект,
Право: ПравоНаЭлемент,
Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено)
Перегрузка:
ПроверитьПраво(Право: СистемноеПраво, Пользователь: Пользователи.Объект|Пользователи.Ссылка|? = Неопределено)

Проверяет право Право на объект Объект, выбрасывает исключение ИсключениеДоступЗапрещен если нет прав на указанный объект. Для ссылочных сущностей в качестве объекта может передаваться ссылка. Также в качестве объекта могут передаваться данные для расчета разрешений в случае, если для объектной сущности включен расчет разрешений доступа для каждого объекта. Если в качестве объекта передан Тип сущности или ссылки, то проверяются права на элемент проекта, породившего этот тип. Проверка осуществляется в текущем контексте прав доступа, если не указан пользователь Пользователь, в рамках контекста прав которого следует осуществлять проверку. В случае, если для сущности предусмотрен расчет разрешений доступа и требуется проверить права на еще не записанную сущность - в качестве объекта нужно передать саму сущность или данные для расчета разрешений данной сущности. Если права не были рассчитаны ранее - они будут рассчитаны с помощью вызова обработчика ВычислитьРазрешенияДоступаДляОбъектов.

Исключения

ИсключениеДоступЗапрещен - если нет прав на объект. ИсключениеНедопустимыйАргумент - если объект не поддерживает указанные права или пользователь не существует.

Примеры

метод Демонстрация(Ссылка: Справочник.Ссылка)
// Проверить право на объект
КонтрольДоступа.ПроверитьПраво(Ссылка, Сущность.Право.Удаление)
КонтрольДоступа.ПроверитьПраво(Ссылка.ЗагрузитьОбъект(), Сущность.Право.Удаление)

// Проверить право на элемент проекта, породившего тип
КонтрольДоступа.ПроверитьПраво(Тип<Справочник>, Сущность.Право.Удаление)
КонтрольДоступа.ПроверитьПраво(Тип<Справочник.Ссылка>, Сущность.Право.Удаление)
КонтрольДоступа.ПроверитьПраво(Тип<Справочник.Объект>, Сущность.Право.Удаление)
;

См. также

ЕстьПраво


Список унаследованных методов

Объект

ВСтроку, ПолучитьТип, Представление