アイデンティティプロバイダとしてAzure AD B2Cを使用してSPAを開発しています。私はMSAL JavaScript libraryを使用していますが、大部分は正常に動作しています。私は、Web APIのバックエンドのためにユーザーを作成し、ログインしてアクセストークンを取得することができます。Azure AD B2Cがリフレッシュトークンを返さない
現在のところ、B2Cエンドポイントはリフレッシュトークンを返さないため、アクセストークンが期限切れになると、リフレッシュトークンを使用して期限切れのアクセストークンをリフレッシュするためのUserAgentApplicationクラスのacquireTokenSilentメソッドが失敗します。
私のアプリケーションでは、「Webアプリケーション/ Web APIを含める」と「暗黙的なフローを許可する」が「はい」に設定されています。 APIアクセスセクションでは、「openid」スコープと「offline_access」スコープの両方に「ユーザーのプロファイルにアクセスする」という項目が表示されます。アプリケーション自体には "読み取り"、 "書き込み"、 "user_impersonation"のスコープがあります(問題があるかどうかはわかりません)。
「offline_accessは、」私のスコープに含まれていると私のイベントは、読み取り/書き込みスコープのように、アプリケーション1を作成しようとしただけでなく(として「https://mytenant.onmicrosoft.com/testapp/offline_access」)が、何も動いていないようにみえことを含んでいます。応答には更新トークンはありません。また、アクセストークンではないIDトークンに対しても応答はありません。
私が気付いたのは、作成したSignUp-SignInポリシーに移動してそこからエンドポイントを実行しようとすると、「offline_access」スコープがドロップダウンリストに表示されないことです。一番下に「実行エンドポイント」リンクをコピーし、実行前にURLにスコープを追加しても、応答にリフレッシュトークンは含まれません。
私は上部にあるリンクをクリックすると、私のエンドポイントについていくつかの詳細を与えるようだし、唯一の「OpenIDのは、」サポートスコープの下にあります。
私はここに何が欠けているかわからないので、任意のアイデアをいただければ幸いです。