Добавление утверждений в маркеры доступа и идентификации#

В маркер могут быть добавлены:

  • хранимые атрибуты;

  • утверждения полученные при входе пользователя по электронной подписи. Это могут быть данные о сертификате ключа электронной подписи, данные о физическом / юридическом лице из сертификата;

  • утверждения полученные при входе через ЕСИА;

  • утверждения определенные в процедуре входа.

Добавление хранимых атрибутов#

Чтобы добавить хранимые атрибуты в маркер идентификации или доступа , укажите их в настройках приложения в пункте Добавляемые в маркер идентификации (id_token) утверждения или в пункте Добавляемые в маркер доступа утверждения соответственно.

Важно

Атрибуты будут добавлены, только если они разрешены в scope данного маркера.

Добавление утверждений полученных при входе по ЭП#

Для добавления утверждений полученных из сертификата ключа электронной подписи:

  1. Отредактируйте конфигурационный файл blitz.conf, добавив в блок настроек blitz.prod.local.idp.login.methods.x509 структуру следующего содержания:

    "claims" : [
    {
          "name" : "attr_name",
          "value" : "cert_attr_name"
    }
    ],
    

    В этой структуре attr_name – имя атрибута, которое будет использовано в маркере идентификации, а cert_attr_name – обозначение атрибута в сертификате (примеры доступных значении приведены в таблице).

  2. Укажите имена атрибутов в настройках приложения в пункте Добавляемые в маркер идентификации (id_token) утверждения, чтобы добавить их в маркер идентификации, или в пункте Добавляемые в маркер доступа утверждения, чтобы добавить их в маркер доступа.

    Важно

    Атрибуты будут добавлены, только если они разрешены в scope данного маркера.

Пример данных, получаемых из сертификата ключа электронной подписи

Обозначение атрибута в сертификате

Описание

SUBJECT.OGRN

ОГРН организации

SUBJECT.OGRNIP

ОГРНИП индивидуального предпринимателя

SUBJECT.INN

ИНН организации

SUBJECT.E

Служебный email должностного лица

SUBJECT.O

Имя организации

SUBJECT.ST

Регион организации

SUBJECT.L

Населенный пункт организации

SUBJECT.STREET

Улица, дом, номер офиса организации

SUBJECT.O

Подразделение должностного лица

SUBJECT.T

Должность представителя

SUBJECT.<OID>

Значением из атрибута с указанным OID. Например, SUBJEC T.1.2.643.100.5 позволяет обратиться к атрибуту с OI D 1.2.643.100.5

Пример добавляемой в конфигурационный файл структуры:

"claims" : [
  {
      "name" : "org_OGRN",
      "value" : "SUBJECT.OGRN"
  },
  {
      "name" : "org_INN",
      "value" : "SUBJECT.INN"
  },
  {
      "name" : "org_email",
      "value" : "SUBJECT.E"
  },
  {
      "name" : "org_name",
      "value" : "SUBJECT.O"
  }
],

Добавление утверждений полученных при входе через ЕСИА#

Для добавления утверждений полученных при входе через ЕСИА:

  1. Отредактируйте конфигурационный файл blitz.conf, добавив в блок настроек blitz.prod.local.idp.federation.points.esia добавить структуру следующего содержания:

    "claims" : [
       {
          "name" : "attr_name",
          "value" : "esia_attr_name"
       }
    ],
    

    В этой структуре attr_name – имя атрибута, которое будет использовано в маркере, а esia_attr_name – обозначение атрибута при получении его из ЕСИА.

  2. Укажите имена атрибутов в настройках приложения в пункте Добавляемые в маркер идентификации (id_token) утверждения, чтобы добавить их в маркер идентификации, или в пункте Добавляемые в маркер доступа утверждения, чтобы добавить их в маркер доступа.

    Важно

    Атрибуты будут добавлены, только если они разрешены в scope данного маркера.

Пример данных, получаемых из ЕСИА

Обозначение атрибута, полученного из ЕСИА

Описание

oid

Уникальный идентификатор учетной записи ЕСИА

lastName

Фамилия

firstName

Имя

middleName

Отчество

birthDate

Дата рождения

gender

Пол

snils

СНИЛС

inn

ИНН

passport

Паспортные данные

birthPlace

Место рождения

email

Эл. почта

mobile

Моб. телефон

Пример добавляемой в конфигурационный файл структуры:

"claims" : [
               {
                  "name" : "esia_firstName",
                  "value" : "firstName"
               },
               {
                  "name" : "esia_lastName",
                  "value" : "lastName"
               },
               {
                  "name" : "esia_middleName",
                  "value" : "middleName"
               },
               {
                  "name" : "esia_birthDate",
                  "value" : "birthDate"
               }
               {
                  "name" : "esia_gender",
                  "value" : "gender"
               }
               {
                  "name" : "esia_snils",
                  "value" : "snils"
               }
               {
                  "name" : "esia_inn",
                  "value" : "inn"
               }
               {
                  "name" : "esia_passport",
                  "value" : "passport"
               }
               {
                  "name" : "esia_birthPlace",
                  "value" : "birthPlace"
               }
               {
                  "name" : "esia_email",
                  "value" : "email"
               }
               {
                  "name" : "esia_mobile",
                  "value" : "mobile"
               }
            ],

Добавление утверждений определенные в процедуре входа#

Для добавления утверждений определенных в процедуре входа:

  1. В раздел blitz.prod.local.idp.login конфигурационного файла добавьте атрибут sessionClaims с перечнем утверждений, которые могут быть определены в процедуре.

    Например, следующая запись позволяет определить атрибут custom_attr:

    "sessionClaims" : [
       "custom_attr"
    ]
    

    Примечание

    Приложения, подключенные по протоколу OpenID Connect 1.0, могут получать данные в маркере идентификации или доступа.

  2. Укажите имена атрибутов в настройках приложения в пункте Добавляемые в маркер идентификации (id_token) утверждения, чтобы добавить их в маркер идентификации, или в пункте Добавляемые в маркер доступа утверждения, чтобы добавить их в маркер доступа.

    Важно

    Атрибуты будут добавлены, только если они разрешены в scope данного маркера.