Приложения
Управление приложениями доступно только пользователям с ролью Владелец или Администратор личного кабинета.
Управление приложениями осуществляется в модуле Приложения.
Для Приложений доступны функции:
- создание и настройка параметров приложения для взаимодействия с внешней системой;
- назначение администраторов приложения;
- настройка способов входа и внешнего вида виджета входа в приложение.
Управление приложениями осуществляется через доступные кнопки или контекстное меню.
Для подключения к внешней системе сервиса Trusted.ID требуется:
- создание и настройка приложения в Trusted.ID;
- настройка подключения по протоколу OAuth 2.0/OpenID Connect 1.0 во внешней системе.
Создание приложения
Создание приложения осуществляется в разделе Приложения по кнопке Создать приложение.
На форме создания приложения задается базовый набор параметров, необходимых для настройки входа в информационную систему через Trusted.ID:
- Основная информация - название, логотип и описание приложения;
- Параметры приложения - адрес и настройки аутентификации.
При создании формируются дополнительные данные приложения, которые можно посмотреть и отредактировать в настройках приложения:
- Идентификатор (client_id) – публичная строка, которая используется для идентификации приложения, и для создания авторизационных URL для пользователей;
- Секретный ключ (client_secret) - используется для аутентификации подлинности приложения, когда приложение запрашивает доступ к аккаунту пользователя. Секретный ключ должен быть известен только приложению.
Расширенный набор параметров доступен при редактировании приложения.
Редактирование настроек приложения
Для редактирования параметров приложения необходимо перейти в раздел Приложения и открыть настройки приложения одним из следующих способов:
- в контекстном меню выбрать пункт Настройки;
- на форме просмотра профиля приложения нажать кнопку Настройки.
Основная информация
В блоке Основная информация задаются:
- Название приложения - используется на виджете входа в приложение;
- Описание приложения - описание приложения;
- Логотип приложения - может быть добавлен на виджет входа.
Параметры приложения
В разделе можно посмотреть, скопировать и изменить параметры:
- Идентификатор (client_id) – уникальный идентификатор приложения. Возможно быстро скопировать значение, используя соответствующую кнопку в поле.
- Секретный ключ (client_secret) – значение скрыто, должен быть известен только приложению. Возможно показать значение или скопировать.
- Адрес приложения – сайт информационной системы, на котором будет использоваться вход через Trusted.ID.
- Возвратный URL (Redirect_uri) - URL, на который сервер Trusted.ID будет перенаправлять пользователя после аутентификации. После того как пользователь аутентифицируется и даст согласие на доступ к своим данным, сервер перенаправляет пользователя обратно на Redirect_uri с кодом авторизации, ID токеном или другой информацией, в зависимости от запрошенного response_type.
- URL выхода из системы (post_logout_redirect_uri) - URL, на который сервис будет перенаправлять пользователя после выхода. Если значение не указано, то используется Возвратный URL (Redirect_uri).
- URL запроса аутентификации или восстановления после аутентификации #1 (request_uris) - список URL-адресов, на которых система разместила запросы авторизации в формате JWT (Request Object). Когда система отправляет запрос на авторизацию серверу, она может просто указать параметр request_uri, который ссылается на один из URL-адресов, определенных в этом списке. Сервер затем извлекает объект запроса JWT по этому URL для обработки запроса.
- response_types - тип ответов, которые возвращает авторизационный сервер. Эти типы ответов определяют, какие токены и коды будут возвращены системе:
- code - получит только код авторизации, который она затем может обменять на токен доступа;
- id_token - получит только ID токен, который содержит информацию о профиле пользователя;
- code id_token - получит код авторизации и ID токен;
- code token - получит код авторизации и токен доступа;
- code id_token token - получит код авторизации, ID токен и токен доступа;
- none - используется, когда не требуется получения кода авторизации, токена доступа или ID токена через перенаправление. Может быть полезным в случаях, когда необходимо подтвердить аутентификацию пользователя, но не требуется доступ к его данным.
- grant_types - способ получения авторизации для доступа к защищенным ресурсам:
- authorization Code - используется для получения доступа к серверу авторизации через промежуточный сервер клиента, что помогает обеспечить безопасность, поскольку токен доступа не передается напрямую клиенту (рекомендуется использовать);
- implicit - данный тип в протоколах OpenID Connect (OIDC) и OAuth 2.0 был разработан для сценариев, где клиентскому приложению не требуется или не удается безопасно хранить долгосрочные секреты. В таких случаях, после аутентификации пользователя, сервер авторизации непосредственно выдает токен доступа клиенту;
- Refresh_token - позволяет приложению получать новый токен доступа, используя уже полученный токен обновления, без необходимости повторного ввода учетных данных пользователя;
- urn:ietf:params:oauth:grant-type:device_code - позволяет включить возможность входа в приложение по QR-коду.
- Метод аутентификации клиента для конечной точки получения токена (token_endpoint_auth_method) - метод, который клиент использует для аутентификации при обращении к token endpoint сервера авторизации:
- none - не предоставляет учетные данные при обращении к token endpoint. Этот метод используется, когда клиент не может конфиденциально хранить учетные данные или когда аутентификация не требуется;
- client_secret_post - отправляет свои учетные данные в теле запроса;
- client_secret_basic - использует HTTP Basic Authentication, отправляя свои учетные данные в заголовке запроса;
- client_secret_jwt - подписывает JWT (JSON Web Token) с использованием своего секрета и отправляет его в качестве учетных данных;
- private_key_jwt - подписывает JWT с использованием своего приватного ключа и отправляет его в качестве учетных данных.
Выбор метода аутентификации зависит от требований безопасности приложения и способности клиента безопасно хранить свои учетные данные. Например, методы client_secret_jwt и private_key_jwt обеспечивают более высокий уровень безопасности, так как используют асимметричное шифрование и позволяют избежать передачи секретов клиента через сеть.
- Метод аутентификации, используемый при доступе к конечной точке проверки токена (introspection_endpoint_auth_method) - метод, который клиент использует при обращении к introspection endpoint. Эта конечная точка используется для проверки состояния токена доступа и получения информации о нем:
- none - не предоставляет учетные данные при обращении к introspection endpoint;
- client_secret_post - отправляет свои учетные данные в теле запроса;
- client_secret_basic - использует HTTP Basic Authentication, отправляя свои учетные данные в заголовке запроса;
- client_secret_jwt - подписывает JWT (JSON Web Token) с использованием своего секрета и отправляет его в качестве учетных данных;
- private_key_jwt - подписывает JWT с использованием своего приватного ключа и отправляет его в качестве учетных данных. Выбор метода зависит от требований безопасности и возможностей клиента. Например, методы, использующие JWT, обеспечивают дополнительный уровень безопасности за счет использования подписанных токенов, что предотвращает необходимость передачи секретов клиента через сеть.
- Метод аутентификации, используемый при доступе к конечной точке отзыва токенов (revocation_endpoint_auth_method) - определяет метод аутентификации, который клиент использует при обращении к revocation endpoint. Эта конечная точка используется для отзыва токенов доступа или обновления токенов. Этот метод обычно совпадает с методами, используемыми для token endpoint и introspection endpoint:
- none - не предоставляет учетные данные при обращении к revocation endpoint;
- client_secret_post - отправляет свои учетные данные в теле запроса;
- client_secret_basic - использует HTTP Basic Authentication, отправляя свои учетные данные в заголовке запроса;
- client_secret_jwt - подписывает JWT (JSON Web Token) с использованием своего секрета и отправляет его в качестве учетных данных;
- private_key_jwt - подписывает JWT с использованием своего приватного ключа и отправляет его в качестве учетных данных.
- Алгоритм подписи, используемый при создании подписанного ID-токена (id_token_signed_response_alg) - указывает алгоритм, который используется для подписи ID токена. ID токен — это JSON Web Token (JWT), который содержит утверждения (claims) о аутентификации пользователя.
- require_auth_time - указывает, должен ли сервер авторизации предоставить время аутентификации пользователя в токене ID. Если этот параметр включен, сервер авторизации включает в ID токен утверждение auth_time, которое представляет собой время, когда пользователь в последний раз выполнил аутентификацию.
- require_signed_request_object - указывает, требуется ли подписанный Request Object при отправке запроса на авторизацию. Request Object — это способ безопасной передачи параметров авторизации от клиента к серверу авторизации, обычно в форме JWT (JSON Web Token). Когда require_signed_request_object включен, клиент должен подписать Request Object с использованием заранее согласованного алгоритма подписи, который указан в конфигурации клиента.
- Способ передачи ID пользователя в идентификационном токене (subject_type) - определяет способ, которым идентификатор пользователя (sub claim) представляется клиенту. Этот параметр влияет на то, как пользовательские идентификаторы генерируются и управляются:
- public** - идентификатор пользователя является одинаковым для всех клиентов. Это означает, что каждый клиент будет видеть один и тот же sub claim для пользователя;
- pairwise - идентификатор пользователя уникален для каждого клиента. Это обеспечивает большую конфиденциальность, так как разные клиенты не смогут связать активность пользователя между собой. pairwise часто используется в сценариях, где необходимо защитить приватность пользователя от различных клиентов.
Способы входа
В разделе настраиваются способы входа для приложения - с помощью каких сервисов и данных пользователи смогут входить в приложение.
По умолчанию в виджете для входа используется логин/пароль пользователя в сервисе. Для виджета должен быть выбран хотя бы один способ входа.
Внешний вид виджета приложения
В разделе можно настроить параметры:
- Показывать логотип приложения на виджете - при включении тогла рядом с названием приложения отображается изображение, загруженное в качестве логотипа в разделе Основная информация;
- Скрыть шапку - при включении тогла в шапке виджета скрывается надпись <Авторизуйтесь пользователем Trusted>;
- Скрыть подвал - при включении тогла в подвале виджета скрывается надпись со Сведениями об авторских правах;
- Заголовок виджета - в строке ввода задается название приложения, в которое пользователь авторизуется. По умолчанию Вход на <Название приложения>;
- Цвет кнопок, Цвет шрифта на кнопках, Цвет ссылок - задается цветовая схема кнопок, текста на кнопках и ссылок по hex-коду.
В Превью отображается макет внешнего вида виджета.