web-dev-qa-db-ja.com

OAuth 2 Authenticationのgrant_typeパラメータの目的は何ですか?

私はOAuth 2認証をLumenマイクロフレームワークで使用しています。現在、grant_type値はpasswordを使用しています。これはunsupported_grant_typeをスローします。別のものを使用しています。grant_typeを使用する目的はpasswordです。

6
Hariharan

grant_type URLパラメーターは、実際のトークンと許可を交換する/tokenエンドポイントの OAuth2 RFC で必要です。したがって、OAuth2サーバーは送信先を認識しています。 Resource Owner Password Credentials Grant を使用しているため、値passwordで指定する必要があります。

OAuth2 RFCから:

許可付与は、クライアントがアクセストークンを取得するために使用する(保護されたリソースにアクセスするための)リソース所有者の許可を表す資格情報です。

grant_type=passwordは、ユーザー名とパスワードを/tokenエンドポイントに送信することを意味します。 Authorization Code Grant フローを使用した場合は、値authorization_codeを使用できます。ただし、ユーザー名とパスワードのペアは送信せず、ユーザー認証後にOAuth2サーバーから受信したコードを送信します。コードは任意の文字列で、人間が読めるものではありません。これは、RFCのワークフロー図にうまく示されています。

8
Ján Halaša