Azure AD B2C テナントに対して Postman のAccess Token
をリクエストするにはどうすればよいですか?
AzureポータルでRun Now
からURLを取得してAuth Url
に入れてみましたが、次のエラーが発生します。
更新
クリスの答えに続き、私は今、上記のエラーを過ぎています。サインインできますが、アクセストークンを取得できません。
AADB2C90085:サービスで内部エラーが発生しました。再認証して、もう一度お試しください。相関ID:45c56d47-4739-465f-8e02-49ba5b3a1b86タイムスタンプ:2017-11-16 15:27:52Z
@ Chris Padgett's answer を使用すると、Implicit
Grant Typeを使用して機能させることができました(Authorization Code Gran Typeで機能させることができませんでした)。
助成金タイプ:Implicit
コールバックURL:B2Cアプリで定義されたURL
認証URL:https://login.microsoftonline.com/te/{tenant}/{policy}/oauth2/v2.0/authorize
クライアントID: Application ID
B2Cアプリから
スコープ:https://{tenant}.onmicrosoft.com/{web api app id uri}/{scope name}
クライアント認証:Either one, it didn't matter
更新
マイクロソフトはこのプロセスを文書化しました! Postmanを使用してトークンを取得し、APIをテストします 。
[Auth URL]フィールドには、クエリ文字列パラメータなしで認証エンドポイントURLを入力するだけです。
https://login.microsoftonline.com/te/{tenant}/{policy}/oauth2/v2.0/authorize
[アクセストークンのURL]フィールド:
https://login.microsoftonline.com/te/{tenant}/{policy}/oauth2/v2.0/token
[コールバックURL]フィールドには、Azure AD B2Cアプリケーションに登録されている次のような返信URLを入力する必要があります。
https://www.getpostman.com/oauth2/callback
[スコープ]フィールドに、「openid」とAPIアクセススコープを入力します。
「クライアント認証」フィールドで、「本文にクライアント資格情報を送信する」を選択します。
エラーAADB2C90085に関連する問題を解決するために最近非常に長い時間を費やしており、この質問はGoogleでの数少ない結果の1つであるため、繁栄のためにいくつかの追加情報を追加したいと思います。
更新
クリスの答えに続き、私は今、上記のエラーを過ぎています。サインインできますが、アクセストークンを取得できません。
AADB2C90085:サービスで内部エラーが発生しました。再認証して、もう一度お試しください。相関ID:45c56d47-4739-465f-8e02-49ba5b3a1b86タイムスタンプ:2017-11-16 15:27:52Z
そして:
@Chris Padgettの回答を使用して、Implicit Grant Typeを使用して機能させることができました(Authorization Code Gran Typeを使用して機能させることができませんでした) 。
B2C_1A_TokenSigningKeyContainerおよびB2C_1A_TokenEncryptionKeyContainerが誤って生成されたため、認証コードフローを使用しているときにこのエラーを受け取りました。 Azure Active Directory B2C でカスタムポリシーを使用してガイドを開始すると、エラーが発生しなくなりました。
リンクからの関連抜粋:
署名キーを作成します
- [ポリシーキー]を選択し、[追加]を選択します。
- [オプション]で、[生成]を選択します。
- [名前]に、TokenSigningKeyContainerと入力します。プレフィックスB2C_1A_が自動的に追加される場合があります。
- [キーの種類]で[RSA]を選択します。
- [キーの使用法]で、[署名]を選択します。
- 作成をクリックします。
暗号化キーを作成します
- [ポリシーキー]を選択し、[追加]を選択します。
- [オプション]で、[生成]を選択します。
- [名前]に、TokenEncryptionKeyContainerと入力します。プレフィックスB2C_1A_が自動的に追加される場合があります。
- [キーの種類]で[RSA]を選択します。
- [キーの用途]で、[暗号化]を選択します。
- 作成をクリックします。
PostmanでB2Cリクエストアクセストークンを取得して、grant_type=implicit
とgrant_type=authorization_code
の両方の付与タイプを使用できます。私はそれに応じて MSドキュメント に関する問題を開きました:
grant_type=authorization_code"
も可能であることを説明します(説明を参照): https://github.com/aspnet/Docs/issues/10336以下の変更が必要でした。
grant_type=implicit
とgrant_type=authorization_code
の唯一の違いは、grant_type=authorization_code
が次のようないくつかのパラメーターを必要とすることです。
アクセストークン(アクセストークンリクエスト)URL: https://login.microsoftonline.com/ "tenant-name" .onmicrosoft.com/oauth2/v2.0/token?p = B2C_1_ "name- of-sign-signin-flow」
client_secret:アプリケーションのキーを生成します:Azureポータル-> Azure AD B2C->アプリケーション->->キー->キーの生成