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

Как добавить в список сервис внешних учетных записей

Добавить сервис внешних учетных записей можно описанными ниже способами.

В панели управления

  1. Откройте панель управления.

  2. Нажмите Приложения и нажмите на интересующее вас приложение.

  3. Нажмите Подключенные списки пользователей и выберите интересующий вас список пользователей.

  4. В его меню нажмите Сервисы внешних учетных записей+ Добавить сервис.

    Добавление сервисов внешних учетных записей для списка пользователей

В коде

  • СервисУчетныхЗаписей — позволяет создать сервис учетных записей определенного вида.
  • НастройкиСервисаУчетныхЗаписей / НастройкиСервисаУчетныхЗаписейЕсиа — задает настройки сервиса учетных записей.
  • СписокПользователей.CНастройкамиСервисовУчетныхЗаписей() — возвращает копию списка пользователей с указанными настройками.
  • СпискиПользователей.Изменить() — позволяет изменить существующий список пользователей.
метод ДобавитьЕСИАВСписокПользователей(СП: СписокПользователей): СписокПользователей
пер НовыеНастройки = новый Множество<НастройкиСервисаУчетныхЗаписей>(СП.НастройкиСервисовУчетныхЗаписей)

// Создадим новый сервис ЕСИА и его настройки
пер СервисЕсиа = новый СервисУчетныхЗаписей(ВидСервисаУчетныхЗаписей.Есиа)
пер НастройкиСервисаЕсиа = новый НастройкиСервисаУчетныхЗаписейЕсиа(СервисЕсиа)

// Настроим адреса для тестовго контура ЕСИА (без указания версии API)
НастройкиСервисаЕсиа.АдресАвторизации = "https://server.example.com/aas/oauth2/ac"
НастройкиСервисаЕсиа.АдресТокена = "https://server.example.com/aas/oauth2/te"
НастройкиСервисаЕсиа.АдресПользовательскойИнформации = "https://server.example.com/rs/prns/"

// Добавим в дополнительные настройки client_id информационной системы.
// client_id для каждого приложения для разных ЮЛ свой
НастройкиСервисаЕсиа.ИдКлиента = ПолучитьИдКлиентаИнформационнойСистемы()

// Укажем тип хранилища в КриптоПро JCP
НастройкиСервисаЕсиа.ВидХранилищаКлючей = "HDImageStore"

// Хранилище без пароля
НастройкиСервисаЕсиа.ПарольХранилищаКлючей = ""

// Укажем псевдоним (алиас) записи с сертификатом и закрытым ключом для ИС в КриптоПро JCP
НастройкиСервисаЕсиа.ПсевдонимЗаписиЗакрытогоКлюча = "<Псевдоним контейнера ключа КЭП из КриптоПро JCP>"

// Если приватный ключ под паролем (а можно не задавать пароль при создании), то добавим также и его
пер Пароль = ПолучитьПарольДляЗакрытогоКлюча()
если не Пароль.Пусто()
НастройкиСервисаЕсиа.ПарольЗакрытогоКлюча = Пароль
;

// Пользователя можно идентифицировать по СНИЛС или почте
НастройкиСервисаЕсиа.ИдентифицироватьПо = [МетодИдентификацииЕсиа.Снилс, МетодИдентификацииЕсиа.АдресПочты]

// Добавим сертификат для декодирования и проверки ответов из ЕСИА,
// который можно взять по ссылке http://esia.gosuslugi.ru/public/esia.zip
// Поле не обязательно к установке
если ПолучитьСертификатДляОтветовЕСИА() != Неопределено
НастройкиСервисаЕсиа.СертификатДляОтветовЕсиа = ПолучитьСертификатДляОтветовЕСИА()
;

// Добавим к остальным сервисам
НовыеНастройки.Добавить(НастройкиСервисаЕсиа)

// Вернем новый список пользователей
пер НовыйСП = СП.СНастройкамиСервисовУчетныхЗаписей(НовыеНастройки)
СпискиПользователей.Изменить(НовыйСП)
возврат НовыйСП
;

С помощью HTTP API