OAuth 権限許可タイプ:説明Summary<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: #000000; } span { font-size: 12pt; font-family: Lato; color: #000000; } h2 { font-size: 24pt; font-family: Lato; color: black; } h3 { font-size: 18pt; font-family: Lato; color: black; } h4 { font-size: 14pt; font-family: Lato; color: black; } a { font-size: 12pt; font-family: Lato; color: #00718F; } a:hover { font-size: 12pt; color: #024F69; } a:target { font-size: 12pt; color: #032D42; } a:visited { font-size: 12pt; color: #00718f; } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } 権限許可の種類は、クライアントがアクセス トークンを取得する方法です。以下は、OAuth で最も広く使用されている権限許可タイプです。 1.認証コード権限許可タイプ 2.リソース所有者のパスワード認証情報の権限許可タイプ 3.クライアント認証情報の権限許可タイプ 4.リフレッシュトークン権限許可タイプ 認証コード権限許可タイプ: 認証コード権限許可タイプは、OAuth で最も広く使用されている権限許可タイプです。 基本的には2つの段階があります。最初のステージでは、クライアントアプリケーションは認証サーバーまたはエンドポイントに認証コードを要求します。第 2 段階では、クライアント アプリケーションは第 1 段階で取得した認証コードを使用して、トークン サーバーまたはエンドポイントに POST 呼び出しを行い、トークンを受信します。 ステージ 1: 認証サーバー/エンドポイントへの GET 呼び出しです。この GET 呼び出し中に、ユーザーは認証エンドポイントにリダイレクトされます。認証情報を入力すると、認証サーバーは、指定/設定されたリダイレクト URL に認証コードを投稿します。 依頼: GET (Authorization Endpoint)?response_type=code&client_id={CLIENT ID}&redirect_uri={REDIRECT URI}&scope={SCOPES}&state={STATE} 応答: {REDIRECT URI}?code={AUTHORIZATION CODE}&state={STATE} ステージ2: このステージでは、 トークン サーバー/エンドポイントへの呼び出しは、POSTリクエストを使用して行われます。このサーバー間呼び出しは、トークンのフェッチプロセス中にバックグラウンドで発生し、UI レベルでは表示されません。 依頼: POST (Token Endpoint) ヘッダー Authorization : Basic <BASE64({CLIENT ID}:{CLIENT SECRET})> 本文 grant_type:authorization_code code:{AUTHORIZATION CODE} redirect_uri:{REDIRECT URI} client_id:{CLIENT ID}client_secret:{CLIENT SECRET} 注:クライアント ID とクライアントシークレットは、構成に応じて、要求本文または要求ヘッダーのいずれかで送信できます。 応答: {"access_token":"{ACCESS TOKEN}","refresh_token":"{REFRESH TOKEN}","scope":"scope","token_type":"Bearer","expires_in":"Lifetime in seconds"} リソース所有者のパスワード認証情報 権限許可タイプ: リソース所有者のパスワード認証情報権限許可タイプは、ユーザー名とパスワードと引き換えにアクセストークンを直接取得するように設計されています。 この権限許可タイプでは、クライアントアプリケーションはトークンエンドポイント/サーバーに対して POST 呼び出しを行い、アクセストークンとリフレッシュトークンを取得します。このプロセスでは、クライアント アプリケーションはユーザー名とパスワードを渡す必要があります。認証情報とクライアント ID/シークレットを確認すると、トークンプロバイダーはアクセストークンとリフレッシュトークンの両方で応答します。 依頼:POST (Token Endpoint)本文grant_type:passwordusername:{USERNAME}password:{PASSWORD}client_id:{CLIENT ID}client_secret:{CLIENT SECRET} 注:クライアント ID とクライアントシークレットは、構成に応じて、要求本文または要求ヘッダーのいずれかで送信できます。 応答: {"access_token":"{ACCESS TOKEN}","refresh_token":"{REFRESH TOKEN}","scope":"scope","token_type":"Bearer","expires_in":"Lifetime in seconds"} クライアント認証情報の権限許可タイプ: クライアント認証情報フローでは、クライアントアプリケーションはクライアント ID とクライアントシークレットを交換して、トークンプロバイダーからアクセストークンを取得します。 この権限許可タイプは、アプリケーションレベルのアクセスに基づいて動作します。このプロセスでは、クライアント アプリケーションはトークン エンドポイント/サーバーに対して POST 呼び出しを行い、クライアント ID とクライアント シークレットを渡してアクセス トークンを取得します。ユーザー認証情報は関与しません。クライアント ID とシークレットを確認すると、トークンプロバイダーはアクセストークンで応答します。クライアント認証情報の権限許可タイプは、アクセストークンのみを処理します。リフレッシュトークンの概念は関係ありません。 依頼: POST (Token Endpoint) 本文 grant_type:client_credentialsclient_id:{CLIENT ID}client_secret:{CLIENT SECRET} 注:クライアント ID とクライアントシークレットは、構成に応じて、要求本文または要求ヘッダーのいずれかで送信できます。 応答: {"access_token":"{ACCESS TOKEN}","scope":"scope","token_type":"Bearer","expires_in":"Lifetime in seconds"} リフレッシュトークン権限許可タイプ: リフレッシュトークン権限許可タイプは、既存のリフレッシュトークンを指定して新しいアクセストークンを取得するように設計されています。 このプロセスでは、クライアント アプリケーションはトークン エンドポイント/サーバーに対して POST 呼び出しを行い、既存のリフレッシュ トークンを渡して新しいアクセス トークンを取得します。リフレッシュトークンを確認すると、トークンプロバイダーはアクセストークンで応答します。 依頼: POST (Token Endpoint) 本文 grant_type:refresh_tokenclient_id:{CLIENT ID}client_secret:{CLIENT SECRET}refresh_token:{REFRESH TOKEN} 注:クライアント ID とクライアントシークレットは、構成に応じて、要求本文または要求ヘッダーのいずれかで送信できます。 応答: {"access_token":"{ACCESS TOKEN}","refresh_token":"{REFRESH TOKEN}","scope":"scope","token_type":"Bearer","expires_in":"Lifetime in seconds"} Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: #000000; } span { font-size: 12pt; font-family: Lato; color: #000000; } h2 { font-size: 24pt; font-family: Lato; color: black; } h3 { font-size: 18pt; font-family: Lato; color: black; } h4 { font-size: 14pt; font-family: Lato; color: black; } a { font-size: 12pt; font-family: Lato; color: #00718F; } a:hover { font-size: 12pt; color: #024F69; } a:target { font-size: 12pt; color: #032D42; } a:visited { font-size: 12pt; color: #00718f; } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } }