Microsoft Entra External ID(CIAM)External tenantでユーザーフローが作れない・一覧に出ない/jwt.msでトークンが見られない原因と解決策

Entra External ID(CIAM)のExternalテナントで「ユーザーフローが作れない/一覧に出ない」「サインインしてもjwt.msでトークンが見られない」という症状は、設定ミスというより“管理ポータルの使い分け”と“テスト時の応答タイプ”が原因になりやすいトラブルです。本記事では、最短で復旧するためのチェックポイントと手順を、画面操作ベースで整理します。

目次

起きている症状を整理する

External tenant(顧客向け External ID / CIAM)でユーザーフローを触り始めた直後に、次のような現象が同時に起きることがあります。

  • ユーザーフローの作成が失敗する、または作成できても「User flows」一覧にすぐ反映されない(しばらくしてから見える)
  • どのユーザーフローを実行してもトークンが取得できない/jwt.ms に貼って確認できない(jwt.ms に遷移しても何も出ない)

結論から言うと、原因は大きく2つに収束するケースが多いです。

原因起こりやすい症状一番効く対処
portal.azure.com と entra.microsoft.com を行き来している作成失敗/一覧が不安定/反映が遅い/画面が古い状態で表示されるEntra 管理センター(entra.microsoft.com)に統一して作成・確認・テスト
テストで id_token を返す設定になっていない(+アプリ側の許可不足)jwt.ms で確認できる ID トークンが手に入らないユーザーフローテストのResponse type を id_tokenにし、アプリ登録でID tokens を有効化

まずは5分で直す:最短復旧チェックリスト

「何が悪いかを細かく切り分ける前に、とにかく正常系を作りたい」場合は、次のチェックを上から順に実施してください。External tenant の CIAM は管理面で挙動が“揺れる”ことがあるため、最短ルートで正常系を作るのがコツです。

チェック項目場所OKの状態NGならどうする
管理ポータルを統一しているブラウザ作業は entra.microsoft.com だけAzureポータルを閉じ、Entra管理センターで作り直し/確認
対象テナントが External tenant になっているEntra管理センター右上のディレクトリ切替顧客向けExternalテナントが選択されているディレクトリを切り替え、別タブで開き直す
ユーザーフローのテストが id_token を返すUser flows の「Run user flow(実行/テスト)」Response type に id_token が選べる/選んで実行Response type を id_token に変更
アプリ登録の Redirect URI が正しいApp registrations → Authenticationユーザーフローテストのリダイレクト先と一致Redirect URI を追加/修正
アプリ登録で ID tokens が許可されているAuthentication → Implicit grant and hybrid flowsID tokens が ONID tokens を ON(※必要な範囲で)

原因1:AzureポータルとEntra管理センターの“行き来”で表示・反映が不安定になる

External ID for customers(CIAM)の External tenant は、管理機能が Entra 側に強く寄っています。にもかかわらず、portal.azure.com(Azureポータル)側にも似たメニューが見えてしまうため、つい両方を触ってしまいがちです。

しかし External tenant に関しては、Azureポータル側が管理対象として完全対応していなかったり、画面反映が遅かったり、表示キャッシュの影響を受けたりする場面があり、次のような“わかりづらい失敗”につながります。

  • 作成直後なのに一覧に出ない(別ポータルでは見える/見えないが分かれる)
  • 作成は成功したはずなのに、次の画面で「存在しない」扱いになる
  • 「作成ボタンが押せるのに失敗する」「設定が保存できない」など、UI不具合のように見える

対処:作成・確認・テストを entra.microsoft.com に統一する

根本解決はシンプルで、External tenant の User flows に関する操作をEntra 管理センター(entra.microsoft.com)に寄せることです。

  1. entra.microsoft.com にサインイン
  2. 右上のディレクトリ切り替えで対象のExternal tenantを選択
  3. User flows の作成・編集・実行テストを、以降すべて Entra 管理センターで行う(Azureポータルでは操作しない)

画面反映が怪しい時の一時的な切り分けとして、InPrivate(シークレット)で試す、ハードリロード(Ctrl+F5)、別ブラウザで試すは有効です。ただし根本対応は「ポータル統一」です。

原因2:ユーザーフローのテストで id_token を返していない(+アプリ登録の許可不足)

jwt.ms は「受け取ったトークン(JWT)をデコードして見せる」ための確認用サイトです。つまり、トークンが手元に届いていない場合は、当然 jwt.ms では何も確認できません。

IDトークンとアクセストークンの違いを押さえる

トークン用途jwt.ms で見たい場面主に関係する設定
ID token(id_token)「誰がサインインしたか」をアプリに伝える(OpenID Connect)ユーザー識別(sub、name、email 等)や issuer、ポリシー(フロー)の確認Response type、openid スコープ、ID tokens 許可
Access token(access_token)APIを呼ぶための権限(OAuth 2.0)aud、scp/roles、付与された権限の確認API の公開、Scopes、同意、クライアント設定

Entra 管理センターからユーザーフローを「その場でテスト」する場合、Response type(応答タイプ)で id_token を選ばない限り、jwt.ms に貼って確認したい ID トークンが返ってきません。さらにアプリ登録側でImplicit grant / ハイブリッド フローの「ID tokens」を許可していないと、テストが途中で止まったり、期待したトークンが返らなかったりします。

注意:本番アプリは「認可コード + PKCE」が基本

ここで出てくる「Implicit grant / ハイブリッド フロー(ID tokens)」は、主にポータル上の簡易テストや特定のクライアントで必要になる設定です。実運用のアプリが認可コードフロー(Authorization Code Flow)+ PKCE を使う場合、必ずしも Implicit を ON にし続ける必要はありません。

ただし今回の「jwt.ms で見たい」という目的に対しては、まずテストが成立する状態を作るのが優先です。動作確認が終わったら、社内のセキュリティ基準に合わせて設定を見直してください。

手順:Entra管理センターでUser flowsを作成し、確実に一覧に出す

以下は「作成できない/一覧に出ない」を避けるための基本手順です。External tenant では、作業途中で別のポータルに移動しないことが重要です。

  1. entra.microsoft.com にアクセスし、対象の External tenant に切り替える
  2. External ID(または Customers)配下の User flows を開く
  3. 新規ユーザーフローを作成し、保存する
  4. 保存後、同じ画面を別タブで開き直し、一覧に反映されているか確認する

「一覧に出ない」時の切り分け表

現象まず疑うポイント確認方法対処
作成後すぐに一覧に出ない表示の遅延/キャッシュ同一テナントで InPrivate を開くEntra管理センターで再読み込みし、時間をおいて再確認
別タブでは見えるが、このタブでは見えない画面キャッシュハードリロード(Ctrl+F5)タブを閉じて開き直す
Azureポータルでは見えるがEntraでは見えない(または逆)ポータル混在による整合性の崩れどちらで作成・編集したかを確認以後 Entra に統一し、必要なら作り直す
作成自体が失敗する権限不足/テナント間違いディレクトリ・管理ロールを確認管理者権限で実施、External tenant を選び直す

手順:アプリ登録(CIAMアプリ)の設定を整える

ユーザーフローが正常でも、アプリ登録側の設定が不足していると、テストでトークンが返らない/リダイレクトできないなどの問題が起こります。最低限、次の2点は必ず押さえます。

  • Redirect URI:ユーザーフローのテストで指定するリダイレクト先と一致させる
  • ID tokens の許可:ポータルテストで id_token を受け取るために必要

アプリ登録の設定ポイント

設定項目場所推奨(テスト目的)よくあるミス
Redirect URIApp registrations → Authenticationテスト用に jwt.ms を追加(運用ではアプリのURL)末尾スラッシュ違い、http/https違い、ポート番号違い、別アプリを選んでいる
ID tokensAuthentication → Implicit grant and hybrid flowsID tokens を ONAccess tokens だけ ON、または両方 OFF
アカウント種別(テナントの前提)App registrations → OverviewExternal tenant(顧客)向けの構成になっている社内テナント前提の設定のまま進めている

Redirect URI を合わせるときの考え方

「ユーザーフローのテスト画面で指定する Reply URL(Redirect URI)」と「アプリ登録(Authentication)に登録してある Redirect URI」はセットです。どちらか片方だけを直しても、リダイレクトエラーやトークン未取得が残ります。

この2つは完全一致している必要があります(プロトコル、ホスト、パス、末尾スラッシュ、ポート番号まで一致)。

手順:User flow を実行して jwt.ms でトークンを確認する

最後に「jwt.ms で見える状態」を作ります。ポイントはResponse type を id_tokenにすることと、アプリ登録で ID tokens が許可されていることです。

  1. Entra管理センターで対象の User flow を開く
  2. Run user flow(テスト/実行)を選ぶ
  3. アプリケーションとして、設定済みのアプリ登録(CIAMアプリ)を選択
  4. Reply URL(Redirect URI)を正しいものにする(例:jwt.ms を使うならアプリ登録にも追加済みであること)
  5. Response type(応答タイプ)を id_token にする
  6. 実行してサインインし、返ってきた ID トークンを jwt.ms で確認する

jwt.ms で「何も出ない」時に見るポイント

症状原因候補確認する場所対処
サインインは完了するが jwt.ms が空id_token が返っていないRun user flow の Response typeid_token を選び直す
エラーで止まる(redirect_uri mismatch 等)Redirect URI 不一致アプリ登録 AuthenticationRedirect URI を一致させる
Response type に id_token が選べない/返ってこないID tokens 許可が OFFAuthentication → Implicit grant and hybrid flowsID tokens を ON
トークンはあるが内容が期待と違うユーザーフロー/アプリの取り違えissuer、policy名、aud を確認External tenant・対象フロー・アプリを揃える

よくある落とし穴:External tenant ならではの追加チェック

上の2大原因で解決しない場合、External tenant(CIAM)特有の“うっかり”を疑います。多くは「違うものを見ている」系の問題です。

ディレクトリ(テナント)の取り違え

ブラウザに複数テナントのセッションが残っていると、意図せず社内テナント(Internal)側の画面を見てしまうことがあります。User flows の一覧やアプリ登録が「存在しない」ように見える時は、まず右上のディレクトリ表示を確認してください。

アプリ登録の取り違え(似た名前問題)

External tenant 側と Internal tenant 側で似た名前のアプリを作っていると、テストで別アプリを選びやすくなります。Run user flow で選択したアプリのApplication (client) IDが、今開いているアプリ登録と一致しているかを確認すると、取り違えが早く見つかります。

ブラウザ拡張・追跡防止でリダイレクトが崩れる

広告ブロッカーや追跡防止の拡張機能が強い環境では、ログイン後の遷移が途中で止まったり、リダイレクトURLのフラグメント(#以降)が欠落したりすることがあります。切り分けとして、拡張機能をOFFにしたブラウザや InPrivate で試すと原因が見えます。

運用目線のおすすめ:正常系を「テンプレ化」しておく

External tenant の検証は、環境やブラウザの状態に左右されやすいのが現実です。そこで、次のように“正常系テンプレ”を決めておくと、問題が起きた時に復旧が早くなります。

  • 管理はEntra 管理センター固定(URLもブックマークして迷わない)
  • テスト用アプリ登録を1つ用意し、Redirect URI に jwt.ms と localhost(検証用)を事前登録
  • テスト用ユーザーフローは最小構成で1つ作り、まずそれで ID トークンが取れることを確認
  • 本番アプリは認可コード + PKCE を基本とし、Implicit は必要な時だけ有効化

実施手順(まとめ)

最後に、今回の問題を最短で解消するための手順をまとめます。迷ったらこの順番で実施してください。

  1. entra.microsoft.com にサインインし、対象のExternal tenantを選択
  2. User flows の作成・確認・テストはEntra 管理センター側だけで実施(Azureポータルで操作しない)
  3. アプリ登録(CIAMアプリ)のRedirect URIを正しく設定(テスト時の Reply URL と一致)
  4. アプリ登録の Authentication でImplicit grant and hybrid flows の「ID tokens」を ON
  5. ユーザーフローのテスト時にResponse type を id_tokenにして実行
  6. 返ってきた ID トークンをjwt.msで確認

まとめ:直すポイントは「ポータル統一」と「id_token」

External tenant(Entra External ID / CIAM)で「ユーザーフローが作れない/一覧に出ない」「jwt.ms でトークンが見られない」は、次の2点を押さえるだけで解消することが多いトラブルです。

  • 操作はentra.microsoft.com(Entra 管理センター)に統一し、Azureポータルと行き来しない
  • User flow のテストでResponse type を id_tokenにし、アプリ登録でID tokens を許可する

まずは jwt.ms で ID トークンが見える「正常系」を作ってください。正常系ができれば、以降の調整(属性・クレーム・ユーザー体験の設計)もスムーズに進みます。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次