本日はAzureの小ネタ枠です。
EntraIDを使ってOpenIDConnectの認可コードフローを試したのでAzurePortalで行った設定手順を残します。
前回記事
以下の前回記事の続きです。
bluebirdofoz.hatenablog.com
認可コードフローを試す
初めに以下のURLをブラウザで開き、認可エンドポイントに認可コードを要求します。
https://login.microsoftonline.com/{ディレクトリ(テナント)ID}/oauth2/v2.0/authorize ?client_id={アプリケーション(クライアント)ID} &response_type=code &redirect_uri=http://localhost:50000/ &scope=openid
EntraIDのサインイン画面が開くので、前回記事で構築した組織ディレクトリに含まれるアカウントでサインインします。
サインインが成功すると、許可する権限の確認画面が開きます。
今回はscopeにopenidを指定したのでユーザを判別するプロファイルの権限が要求されます。
[承諾]をクリックすると、以下のリダイレクトURLが開き、認可コードを取得できます。
http://localhost:50000/ ?code={認可コード} &session_state={任意のステート番号}
次に認可コードを使用し、トークンエンドポイントからIDトークンを要求します。
postmanを使ってトークンエンドポイントにPOSTメソッドを実行します。
bluebirdofoz.hatenablog.com
以下のPOSTメソッドを実行します。
URL
https://login.microsoftonline.com/{ディレクトリ(テナント)ID}/oauth2/v2.0/token