В IdentityServer4, можете ли вы использовать «*» в качестве запрошенной области в аутентификации client_credentials? - PullRequest
0 голосов
/ 20 мая 2019

Я бы хотел настроить IdentityServer4, чтобы разрешить передачу «*» в качестве области во время запроса аутентификации, а затем сервер выяснит, к каким областям клиент имеет доступ. Есть ли класс IdentityServer4, который я могу переопределить / реализовать, который может "разрешать / изменять" области, которые отправляются?

1 Ответ

2 голосов
/ 20 мая 2019

Согласно протоколу OpenID Connect спецификация , все запросы authorization

ДОЛЖНЫ содержать значение области действия openid.Если значение области действия openid отсутствует, поведение полностью не определено.Могут присутствовать другие значения области действия

Однако с помощью Identityserver вы можете вызвать конечную точку Token без параметра области действия в запросе и получить все области, разрешенные для клиента.client_credentials именно такой случай, поэтому вам не нужны "звездочки".

Если вы хотите выполнить какую-то «особую магию», вы можете ознакомиться с реализациями ScopeValidator , а также ICustomAuthorizeRequestValidator и ICustomTokenRequestValidator .Последние два являются основными (и самыми простыми) точками расширения для любой обработки запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...