適用対象: すべての API Management レベル
この記事では、Azure API Management インスタンスでマネージド 接続 用の ID プロバイダーを構成する方法について説明します。 次の一般的なプロバイダーの設定を示します。
- Microsoft Entra
- 汎用 OAuth 2
資格情報プロバイダーは、API Management インスタンスの資格情報マネージャーで構成します。 Microsoft Entra プロバイダーと接続を構成する詳細な例については、「 資格情報マネージャーの構成 - Microsoft Graph API」を参照してください。
前提条件
API Management でサポートされているプロバイダーのいずれかを構成するには、まず、API アクセスの承認に使用される OAuth 2.0 アプリを ID プロバイダーで構成します。 構成の詳細については、プロバイダーの開発者向けドキュメントを参照してください。
認証コード付与の種類を使用する資格情報プロバイダーを作成する場合は、アプリでリダイレクト URL (承認コールバック URL または同様の名前と呼ばれることもあります) を構成します。 値には、「
https://authorization-manager.consent.azure-apim.net/redirect/apim/<API-management-instance-name>」と入力します。シナリオに応じて、スコープ (API アクセス許可) などのアプリ設定を構成します。
少なくとも、API Management で構成されるアプリのクライアント ID とクライアント シークレット を取得します。
プロバイダーとシナリオによっては、承認エンドポイントの URL やスコープなど、他の設定を取得することが必要になる場合があります。
プロバイダーの承認エンドポイントには、お使いの API Management インスタンスからインターネット経由で到達できる必要があります。 API Management インスタンスが仮想ネットワークで保護されている場合は、プロバイダーのエンドポイントへのアクセスを許可するようにネットワークまたはファイアウォール規則を構成します。
Microsoft Entra プロバイダー
API Management 資格情報マネージャーは、Id 管理とアクセス制御の機能を提供する Azure の ID サービスである Microsoft Entra ID プロバイダーをサポートしています。 これにより、ユーザーは業界標準のプロトコルを使用して安全にサインインできます。
サポートされている付与タイプ: 認可コード、クライアント資格情報
Note
現在、Microsoft Entra 資格情報プロバイダーでは、Azure Active Directory v1.0 エンドポイントのみがサポートされています。
Microsoft Entra プロバイダーの設定
| プロパティ | 説明 | 必須 | Default |
|---|---|---|---|
| 資格情報プロバイダー名 | API Management の資格情報プロバイダー リソースの名前。 | はい | 該当なし |
| ID プロバイダー | Azure Active Directory v1 を選択します。 | はい | 該当なし |
| 許可の種類 | 使用する OAuth 2.0 承認許可の種類。 シナリオに応じて、[認証コード] または [クライアント資格情報] を選択します。 |
はい | 承認コード |
| Authorization URL (承認 URL) | 承認 URL。 | いいえ | https://login.microsoftonline.com |
| クライアント ID | Microsoft Entra アプリを識別するために使用されるアプリケーション (クライアント) ID。 | はい | 該当なし |
| クライアント シークレット | Microsoft Entra アプリに使用されるクライアント シークレット。 | はい | 該当なし |
| リソース URL | 承認を必要とするリソースの URL。 例: https://graph.microsoft.com |
はい | 該当なし |
| テナント ID | Microsoft Entra アプリのテナント ID。 | いいえ | コモン |
| スコープ | Microsoft Entra アプリの 1 つ以上の API アクセス許可をスペースで区切って指定します。 例: ChannelMessage.Read.All User.Read |
いいえ | Microsoft Entra アプリで設定された API アクセス許可 |
汎用 OAuth プロバイダー
接続の構成には、次の 3 つの汎用プロバイダーを使用できます。
- 汎用 OAuth 2.0
- PKCE を使用した汎用 OAuth 2.0
- 汎用 OAuth 2.1 と PKCE と DCR の使用
汎用プロバイダーを使用すると、特定のニーズに基づいて独自の OAuth ID プロバイダーを使用できます。
Note
ID プロバイダーでサポートされている場合は、PKCE プロバイダーを使用してセキュリティを強化することをお勧めします。 詳細については、「 Code Exchange の Proof Key」を参照してください。
サポートされている付与タイプ: 承認コード、クライアント資格情報 (プロバイダーにより異なる)
汎用視覚情報プロバイダーの設定
| プロパティ | 説明 | 必須 | Default |
|---|---|---|---|
| 資格情報プロバイダー名 | API Management の資格情報プロバイダー リソースの名前。 | はい | 該当なし |
| ID プロバイダー | OAuth 2.0、OAuth 2.0 with PKCE、または PKCE と DCR 付きの OAuth 2.1 を選択します。 | はい | 該当なし |
| 許可の種類 | 使用する OAuth 2.0 承認許可の種類。 シナリオと ID プロバイダーに応じて、[承認コード] または [クライアント資格情報] を選択します。 |
はい | 承認コード |
| Authorization URL (承認 URL) | 承認エンドポイントの URL。 | はい(PKCE の場合) | OAuth 2.0 では未使用 |
| クライアント ID | ID プロバイダーの承認サーバーに対してアプリを識別するために使用される ID。 | はい | 該当なし |
| クライアント シークレット | アプリが ID プロバイダーの承認サーバーで認証するために使用するシークレット。 | はい | 該当なし |
| URL の更新 | 更新トークンを更新されたアクセス トークンと交換するためにアプリが要求する URL。 | はい(PKCE の場合) | OAuth 2.0 では未使用 |
| サーバー URL | ベース サーバーの URL。 | はい(DCR を使用した PKCE を使用した OAuth 2.1 の場合) | 該当なし |
| トークン URL | プログラムによってトークンを要求するために使用される ID プロバイダーの承認サーバー上の URL。 | はい | 該当なし |
| スコープ | アプリが実行できる 1 つ以上の特定のアクション、または API からユーザーに代わって要求できる情報を、スペースで区切って指定します。 例: user web api openid |
いいえ | 該当なし |
他の ID プロバイダー
API Management では、GitHub、LinkedIn など、一般的な SaaS オファリング用のいくつかのプロバイダーがサポートされています。 資格情報プロバイダーを作成するときに、Azure portal でこれらのプロバイダーの一覧から選択できます。
サポートされている許可の種類: 承認コード
これらのプロバイダーに必要な設定は、プロバイダーによって異なりますが、 汎用 OAuth プロバイダーの設定と似ています。 各プロバイダーの開発者向けドキュメントを参照してください。
関連コンテンツ
- API Management での接続の管理に関する詳細情報。
- Microsoft Entra ID または GitHub 用の接続を作成する。