Identity Server 4 - Как определить поддерживаемые типы грантов и т. Д. - PullRequest
0 голосов
/ 22 ноября 2018

В текущем проекте ASP.NET Core (v2.1.6) Identity Server 4 (v2.2.0) был реализован для аутентификации пользователя и API и работает как шарм.Для клиентов grant_type установлено только client-credentials, а для scopes установлено несколько пользовательских областей, где offline_access равно , не разрешено.

После посещения.well-known/openid-configuration было обнаружено, что поддерживается больше grant_types, чем указано, и offline_access является поддерживаемой областью, даже если она была отключена (сокращено для краткости):

{
  "scopes_supported": [
    "custom_scope_1",
    "custom_scope_2",
    "offline_access"
  ],
  "grant_types_supported": [
    "authorization_code",
    "client_credentials",
    "refresh_token",
    "implicit",
    "password"
  ],
}

Документация для обоих IdentityServer4 , но не смог найти подсказку, как установить такую ​​опцию.Я наткнулся на возможно более старую документацию , но, похоже, это не является частью текущей версии.

Есть ли возможность явно определить поддерживаемые типы грантов во время конфигурации, которые я только что пропустил?Или он генерируется автоматически и не может быть установлен вообще?

1 Ответ

0 голосов
/ 22 ноября 2018

Я полагаю, что это все, что поддерживает IdentityServer4;т.е. его возможности.

Вы можете увидеть, как они добавляются здесь (строка 223);краткий ответ заключается в том, что они основаны на возможностях / конфигурации server , а не на отдельных клиентах.


Вы настраиваете каждого клиента индивидуально с теми типами грантов, которые вы хотитес коллекцией ClientGrantTypes.

Если вы используете коллекцию клиента в памяти, они называются там AllowedGrantTypes.


Добавление: as .well-known / openid-configuration - это концепция открытых стандартов, а не IdentityServer, вы можете увидеть подтверждение выше здесь .

grant_types_supported

ДОПОЛНИТЕЛЬНО.JSON-массив, содержащий список значений типа гранта OAuth 2.0 , которые поддерживает этот OP .

...