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

Пользователи

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

Менеджер пользователей приложения.

Сравнение

Ссылочное

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

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


Примеры

Общие примеры

Создание пользователя

метод СоздатьПользователя(Представление: Строка, Телефон: Строка, ЭлПочта: Строка): Пользователи.Ссылка
// У пользователя может быть несколько учетных записей, созданных в разных сервисах аутентификации.
// Здесь создание локального сервиса учетных записей выполняется с целью упрощения примера.
знч УчетныеЗаписи = {СоздатьУчетнуюЗапись(Представление, СоздатьСервисУчетныхЗаписейЛокальный())}

// Создание описания пользователя в списке пользователей по умолчанию
пер ОписаниеПользователяСервиса = новый ОписаниеПользователяСервиса(СпискиПользователей.ПолучитьСписокПоУмолчанию().Ид, Представление)
ОписаниеПользователяСервиса = ОписаниеПользователяСервиса
.СЛогином(Представление)
.СТелефоном(Телефон)
.СЭлектроннойПочтой(ЭлПочта)
.СУчетнымиЗаписями(УчетныеЗаписи)

// Требуются права администратора или привилегированный режим, иначе будет исключение
ПользователиСервиса.Создать(ОписаниеПользователяСервиса)

// Подключение пользователя к приложению
// Требуются права администратора или привилегированный режим, иначе будет исключение
знч ПользовательСсылка = Пользователи.Подключить(ОписаниеПользователяСервиса.Ид).Ссылка

// Выдать пользователю права администратора
Пользователи.СделатьАдминистратором(ПользовательСсылка, Истина)

возврат ПользовательСсылка
;

метод СоздатьУчетнуюЗапись(Ид: Строка, СервисУчетныхЗаписей: СервисУчетныхЗаписей): УчетнаяЗапись
возврат новый УчетнаяЗапись(Ид, СервисУчетныхЗаписей)
;

метод СоздатьСервисУчетныхЗаписейЛокальный(): СервисУчетныхЗаписей
знч Сервис = новый СервисУчетныхЗаписей(ВидСервисаУчетныхЗаписей.Локальный, "LOCAL")

знч НастройкиСервиса = новый НастройкиСервисаУчетныхЗаписей(Сервис)
НастройкиСервиса.Включено = Истина
НастройкиСервиса.СоздаватьПользователяПриВходе = Ложь

возврат Сервис
;

Создание токена доступа для пользователя

метод СоздатьТокенДоступаПользователя(Ид: ИдПользователя): ДанныеЗапросаТокенаДоступа
// Генерация токена доступа
знч ДанныеЗапросаТокенаДоступа = ПользователиСервиса.СгенерироватьДанныеЗапросаТокенаДоступа(Ид)

// Поиск ссылки пользователя
знч ПользовательСсылка = Пользователи.Найти(Ид)

// Разрешить доступ по токену
Пользователи.РазрешитьДоступПоТокену(ПользовательСсылка, Истина)

возврат ДанныеЗапросаТокенаДоступа
;

Изменение контактных данных пользователя

метод ИзменитьКонтактныеДанныеПользователя(Ид: ИдПользователя, НовыйТелефон: Строка, НоваяЭлПочта: Строка)
// Поиск описания пользователя
знч ОписаниеПользователяСервиса = ПользователиСервиса.Найти(Ид)

если ОписаниеПользователяСервиса == Неопределено
возврат
;

// Создание копии описания пользователя с новыми контактными данными
знч ОписаниеПользователяНовый = ОписаниеПользователяСервиса
.СТелефоном(НовыйТелефон)
.СЭлектроннойПочтой(НоваяЭлПочта)

ПользователиСервиса.Изменить(ОписаниеПользователяНовый)
;

Получение признака запрета входа пользователя

метод ПолучитьПризнакЗапретаВходаПользователя(Ид: ИдПользователя): Булево?
// Поиск описания пользователя
знч ОписаниеПользователя = ПользователиСервиса.Найти(Ид)

если ОписаниеПользователя == Неопределено
возврат Неопределено
;

// Поиск ссылки на справочник по идентификатору пользователя
знч ПользовательСсылка = Пользователи.Найти(ОписаниеПользователя.Ид)

если ПользовательСсылка == Неопределено
возврат Неопределено
;

// Загрузка объекта справочника с блокировкой, требуется транзакция
исп Транзакции.Начать()
знч ПользовательОбъект = ПользовательСсылка.ЗагрузитьОбъект(Истина)

возврат ПользовательОбъект == Неопределено ? Неопределено : ПользовательОбъект.ЗапрещенВход
;

Свойства

ТекущийИдАутентификации

Доступность: Сервер ТолькоЧтение

ТекущийИдАутентификации: ИдАутентификации?

Текущий идентификатор аутентификации или Неопределено, если вход выполнен анонимно. Позволяет понять, каким способом вошел пользователь (через обычный логин, Active Directory или другие сторонние сервисы).


ТекущийИдПользователя

Доступность: Сервер ТолькоЧтение

ТекущийИдПользователя: ИдПользователя?

Текущий идентификатор пользователя или Неопределено, если вход выполнен анонимно. Этот идентификатор совпадает во всех приложениях, где подключен пользователь.


ТекущийПользователь

Доступность: Сервер ТолькоЧтение

ТекущийПользователь: Пользователи.Ссылка?

Текущий пользователь или Неопределено, если вход выполнен анонимно. В отличие от идентификатора, ссылка специфична для приложения.


Методы

ЗапретитьВход

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

ЗапретитьВход(
Пользователь: Пользователи.Ссылка,
ЗапретитьВход: Булево)
Устанавливает флаг запрета пользователю использовать приложение (запрещен ли вход в приложение). При подключении пользователя вход разрешен. Переподключение пользователя никак не влияет на запрет на вход.

Исключения

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


Найти

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

Возвращает ссылку на пользователя по идентификатору Ид пользователя на сервере. Неопределено, если пользователь не подключен к приложению.


Отключить

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

Отключить(Пользователь: Пользователи.Ссылка)
Отключает пользователя приложения Пользователь. Удаляет запись пользователя из БД.

Исключения

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


Переподключить

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

Переподключить(
ИдПользователя: ИдПользователя,
ИдСсылки: Ууид
): Пользователи.Объект
Переподключает пользователя сервера ИдПользователя, как существующего пользователя приложения с идентификатором ссылки ИдСсылки. Возвращает экземпляр пользователя.

Исключения

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


ПересчитатьКлючиДоступа

Версия 7.0 и выше

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

ПересчитатьКлючиДоступа(Пользователи: ЧитаемыйМассив<Пользователи.Ссылка>? = Неопределено)
Пересчитывает все ключи доступа для указанных пользователей Пользователи (или всех пользователей, если Неопределено).

Исключения

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


ПересчитатьКлючиДоступа

Версия 6.0 и ниже

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

ПересчитатьКлючиДоступа(Пользователи: ЧитаемыйМассив<Пользователи.Объект>? = Неопределено)
Метод заменен на ПересчитатьКлючиДоступа.


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

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

ПересчитатьСистемныеРазрешенияДоступа()
Пересчитывает все разрешения доступа на системные действия.

Исключения

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


Подключить

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

Подключить(
ИдПользователя: ИдПользователя,
ИдСсылки: Ууид
): Пользователи.Объект
Подключает пользователя сервера с идентификатором ИдПользователя к приложению и устанавливает идентификатор ссылки ИдСсылки. Возвращает созданного пользователя.

Исключения

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


ПолучитьКлючиДоступа

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

ПолучитьКлючиДоступа(Пользователь: Пользователи.Ссылка): Массив<КлючДоступа.Объект>
Возвращает ключи доступа пользователя Пользователь.


ПолучитьПраваНаДействия

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

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


ПолучитьСсылку

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

ПолучитьСсылку(Ид: Ууид): Пользователи.Ссылка
Возвращает ссылку на пользователя с указанным значением Ид идентификатора ссылки.


РазрешитьДоступПоТокену

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

РазрешитьДоступПоТокену(
Пользователь: Пользователи.Ссылка,
РазрешитьДоступ: Булево)
Устанавливает значение РазрешитьДоступ разрешающее/запрещающее доступ пользователя по ссылке Пользователь в приложение.

Исключения

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


СделатьАдминистратором

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

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

Исключения

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


УдалитьУтверждение

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

УдалитьУтверждение(
Пользователь: Пользователи.Ссылка,
Утверждение: Строка)
Удаляет утверждение Утверждение для пользователя Пользователь.

Исключения

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


УстановитьЛокальОтображения

Версия 8.0 и выше

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

УстановитьЛокальОтображения(
Пользователь: Пользователи.Ссылка,
Локаль: Локаль?)
Устанавливает пользовательскую настройку локали отображения. Изменяется свойство пользователя ЛокальОтображения. При передаче в параметре Локаль значения Неопределено настройка сбрасывается и считается не заданной.

При незаданной локали интерфейс пользователя будет отображаться на языке, который настроен в браузере.

Обычный пользователь может изменить настройку локали отображения только для самого себя. Администратор может изменить ее для любого пользователя.


УстановитьЛокальФорматирования

Версия 8.0 и выше

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

УстановитьЛокальФорматирования(
Пользователь: Пользователи.Ссылка,
Локаль: Локаль?)
Устанавливает пользовательскую настройку локали форматирования. Изменяется свойство пользователя ЛокальФорматирования. Локаль форматирования влияет на способ представления дат и чисел в виде строки, согласно региональным особенностям локали форматирования.

При передаче в параметре Локаль значения Неопределено настройка сбрасывается и считается не заданной. При незаданной локали форматирования, даты и числа будут представляться согласно региональных особенностей локали отображения.

Обычный пользователь может изменить настройку локали форматирования только для самого себя. Администратор может изменить ее для любого пользователя.


УстановитьУтверждение

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

УстановитьУтверждение(
Пользователь: Пользователи.Ссылка,
Утверждение: Строка,
Значение: Строка)
Устанавливает значение Значение утверждения Утверждение для пользователя Пользователь.

Исключения

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


УстановитьУтверждения

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

УстановитьУтверждения(
Пользователь: Пользователи.Ссылка,
Утверждения: ЧитаемоеСоответствие<Строка, Строка>)
Устанавливает утверждения Утверждения для пользователя Пользователь.

Исключения

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


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

Объект

ВСтроку

ПолучитьТип

Представление