2016-06-06 2 views
2

Я разрабатываю провайдера oauth2 на основе rfc6749, и мне интересно, почему redirect_uri требуется на Access Token Request? Конечная точка/токен не перенаправляется, и считается, что состояние уже проверено (т. Е. Против CSRF), поэтому копия redirectURI не имеет для меня большого смысла.Зачем нужен запрос redirect_uri на запрос токена доступа?

ответ

-2

Я предлагаю вам использовать библиотеку. OAuth2 - это хорошо определенный стандарт, и существует немало реализаций. Нет смысла изобретать колесо.

Однако, если вы хотите реализовать тот, который вы всегда можете проверить статью у меня на эту тему: https://eidand.com/2015/03/28/authorization-system-with-owin-web-api-json-web-tokens/

+0

Это не отвечает на вопрос. Даже если бы я использовал существующую библиотеку, вопрос все еще стоит. – themihai

+0

вам не нужен redirect_uri. вам нужна конечная точка маркера да, и все. эта ссылка показывает, что required_uri не является обязательным. Он сказал, и я цитирую «НЕОБХОДИМО, ЕСЛИ параметр« redirect_uri »был включен в запрос авторизации , как описано в разделе 4.1.1, и их значения ДОЛЖНЫ быть идентичными». –

+0

Таким образом, мой вопрос: зачем он нужен, если он ничего не делает (т. Е. Он не перенаправляет)? В чем вред, если вы включили его в запрос authz, но не на запрос маркера. Вы не можете сделать многое без redirect_uri в запросе authz в любом случае, так что это становится довольно востребованным и в вопросе маркера. – themihai

0

Redirect URI необходим в случае 1. авторизации потока кода, где сервер перенаправляет с кодом для перенаправления URI, например, ответ на запрос образца авторизации:

HTTP/1.1 302 Found 
Location: https://client.example.com/cb?code=SplxlOBeZQQYbYS6WxSbIA 
      &state=xyz 

То же самое верно и для ответа ошибки для AuthZ потока кода:

HTTP/1.1 302 Found 
Location: https://client.example.com/cb?error=access_denied&state=xyz 

В случае неявного предоставления также сервер возвращает токен доступа в хэш-символе «#» в URI перенаправления, предоставленном в запросе

Смежные вопросы