Параметры приложения
Раздел Параметры приложения содержит адрес сервиса и настройки аутентификации.
Параметры раздела не доступны для редактирования и настраиваются через конфигурационный файл (подробное описание в п. Описание переменных окружения).
- Идентификатор (client_id) – уникальный идентификатор приложения. Возможно быстро скопировать значение, используя соответствующую кнопку в поле.
- Секретный ключ (client_secret) – значение скрыто, должен быть известен только приложению. Возможно показать значение или скопировать.
- Адрес приложения – адрес сервиса Trusted.ID.
- Возвратный URL (Redirect_uri) - URL, на который будет перенаправлен пользователь после аутентификации.
- 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 часто используется в сценариях, где необходимо защитить приватность пользователя от различных клиентов.