適用対象: 開発者 |Basic v2 |標準 |Standard v2 |Premium |Premium v2
Microsoft Entra External ID は、外部 ID がアプリとリソースに安全にアクセスできるようにするクラウド ID 管理ソリューションです。 これを使用して、外部 ID を使用して API Management 開発者ポータルへのアクセスを管理できます。
この記事では、API Management 開発者ポータルでサポートされている次のシナリオに対する Microsoft Entra ID ID プロバイダーの構成について説明します。
- 従業員テナントでの Microsoft Entra 外部 ID との統合。 たとえば、従業員テナントが Contoso 組織向けである場合は、外部ユーザーが自分のアカウントを使用してサインインできるように、Google または Facebook を外部 ID プロバイダーとして構成できます。
- 別の外部テナントでの Microsoft Entra 外部 ID との統合。 この構成では、そのテナントの外部ユーザーのみが開発者ポータルにサインインできます。
注
現時点では、開発者ポータル用に複数の Microsoft Entra ID ID プロバイダーを構成することはできません。
開発者ポータルへのアクセスをセキュリティで保護するオプションの概要については、 API Management 開発者ポータルへのアクセスのセキュリティ保護に関するページを参照してください。
注
API Management は、外部 ID プロバイダーとしての Azure Active Directory B2C のレガシ サポートを提供します。 ただし、API Management 開発者ポータルの新しいデプロイには、Azure Active Directory B2C ではなく ID プロバイダーとして Microsoft Entra External ID を使用することをお勧めします。
Important
2025 年 5 月 1 日より、Azure AD B2C は新規のお客様向けに購入できなくなります。 詳細については、FAQ を参照してください。
[前提条件]
- 外部アクセスを有効にする Microsoft Entra ID テナント (ワークフォース テナント)、または別の 外部テナント
- ワークフォース テナントでアプリケーションを作成し、ユーザー フローを構成するためのアクセス許可。
- API Management インスタンス。 まだない場合は、 Azure API Management インスタンスを作成します。
- v2 レベルでインスタンスを作成した場合は、開発者ポータルを有効にします。 詳細については、「 チュートリアル: 開発者ポータルにアクセスしてカスタマイズする」を参照してください。
テナントに外部 ID プロバイダーを追加する
ワークフォース テナントを使用している場合は、従業員テナントで外部 ID プロバイダーを有効にする必要があります。 外部 ID プロバイダーの構成は、この記事の範囲外です。 詳細については、「従業員テナント内の外部 ID の ID プロバイダー」を参照してください。
Microsoft Entra アプリの登録を作成する
Microsoft Entra ID テナントでアプリ登録を作成します。 アプリの登録は、Microsoft Entra の開発者ポータル アプリケーションを表し、ポータルで Microsoft Entra ID を使用してユーザーをサインインできるようにします。
- Azure portal で、[Microsoft Entra ID] に移動します。
- サイドバー メニューの [ 管理] で、[ アプリの登録>+ 新規登録] を選択します。
- [ アプリケーションの登録 ] ページで、アプリケーションの登録情報を入力します。
- [ 名前 ] セクションで、選択したアプリケーション名を入力します。
- [ サポートされているアカウントの種類 ] セクション で、[この組織のディレクトリ内のアカウントのみ] を選択します。
-
リダイレクト URI で、シングルページ アプリケーション (SPA) を選択し、URL
https://{your-api-management-service-name}.developer.azure-api.net/signinを入力します。ここで、{your-api-management-service-name}は API Management インスタンスの名前です。 - [登録] を選択して、アプリケーションを作成します。 1.アプリの [概要 ] ページで、 アプリケーション (クライアント) ID と ディレクトリ (テナント) ID を 見つけて、これらの値を安全な場所にコピーします。 後で必要になります。
- サイドバー メニューの [ 管理] で、[ 証明書とシークレット] を選択します。
- [ 証明書とシークレット ] ページの [ クライアント シークレット ] タブで、[ + 新しいクライアント シークレット] を選択します。
- [Description]\(説明\) を入力します。
- [有効期限] に任意のオプションを選択します。
- [を選択してを追加します]
- ページを離れる前に、クライアント シークレットの値 を安全な場所にコピーします。 この情報は後で必要になります。
- サイドバー メニューの [管理] で、[トークンの構成]、[>を選択します。
- [ トークンの種類] で、[ID] を選択 します。
- 電子メール、family_name、given_nameの要求を選択 (チェック) します。
- [] を選択し、[] を追加します。 メッセージが表示されたら、[ Microsoft Graph の電子メール、プロファイルのアクセス許可を有効にする] を選択します。
テナントのセルフサービス サインアップを有効にする
外部ユーザーが開発者ポータルにアクセスするためにサインアップするには、次の手順を完了する必要があります。
- テナントのセルフサービス サインアップを有効にします。
- セルフサービス サインアップ ユーザー フローにアプリを追加します。
詳細と詳細な手順については、従業員と外部テナントのどちらを使用しているかに応じて、次の記事を参照してください。
- ワークフォース テナント: B2B コラボレーション用のセルフサービス サインアップ ユーザー フローを追加する
- 外部テナント: 外部テナント アプリのサインアップとサインイン のユーザー フローを作成 し、 ユーザー フローにアプリを追加する
開発者ポータルの ID プロバイダーとして Microsoft Entra ID を構成する
API Management インスタンスで、Microsoft Entra ID ID プロバイダーを構成します。 前のセクションでアプリ登録からコピーした値が必要です。
Azure portal タブで、API Management インスタンスに移動します。
サイドバー メニューの [開発者ポータル] で、[ID]、[>を選択します。
[ ID プロバイダーの追加] ページで、 Microsoft Entra ID を選択します。 選択すると、他の必要な情報を入力できます。
- クライアント ID に、アプリ登録のアプリケーション (クライアント) ID を入力します。
- クライアント シークレットに、アプリ登録のシークレット値を入力します。
- サインイン テナントで、アプリの登録からディレクトリ (テナント) ID を入力します。
- [クライアント ライブラリ] ドロップダウンで、[MSAL] を選択します。
[] を選択し、[] を追加します。
Microsoft Entra 構成を有効にするには、開発者ポータルを再発行します。 サイドバー メニューの 開発者ポータルで、 ポータルの概要>Publish を選択します。
Important
変更を有効にするには、ID プロバイダーの構成設定を作成または更新するときに 、開発者ポータルを再発行 する必要があります。
Microsoft Entra External ID を使用して開発者ポータルにサインインする
開発者ポータルでは、Microsoft Entra 外部 ID でサインインするには、[ サインイン] ボタン (OAuth ウィジェット) を使用します。 ウィジェットは、既定の開発者ポータル コンテンツのサインイン ページに既に含まれています。
Microsoft Entra External ID を使用してサインインするには、新しいブラウザー ウィンドウを開き、開発者ポータルに移動します。 [ サインイン] を選択します。
[サインイン] ページ で 、[ Azure Active Directory] を選択します。
Microsoft Entra テナントのサインイン ウィンドウで、[ サインイン オプション] を選択します。 サインインするように Microsoft Entra テナントで構成した ID プロバイダーを選択します。 たとえば、Google を ID プロバイダーとして構成した場合は、[ Google でサインイン] を選択します。
サインインを続行するには、プロンプトに応答します。 サインインが完了すると、開発者ポータルにリダイレクトされます。
これで、API Management サービス インスタンスの開発者ポータルにサインインしました。 あなたは、ユーザーとして新しい API Management ユーザー ID に追加され、Microsoft Entra ID の新しい外部テナント ユーザーとして追加されます。