次の方法で共有


Microsoft Graph を使用して Azure AD B2C を管理する

重要

2025 年 5 月 1 日より、Azure AD B2C は新規のお客様向けに購入できなくなります。 詳細については、FAQ を参照してください

Microsoft Graph を使用すると、Azure AD B2C ディレクトリ内のリソースを管理できます。 次の Microsoft Graph API 操作は、ユーザー、ID プロバイダー、ユーザー フロー、カスタム ポリシー、ポリシー キーなど、Azure AD B2C リソースの管理でサポートされています。 次のセクションの各リンクは、その操作の Microsoft Graph API リファレンス内の対応するページを対象としています。

また、Azure サブスクリプションにリンクされている対応する Azure リソースと共に、Azure AD B2C ディレクトリ自体をプログラムで作成することもできます。 この機能は Microsoft Graph API ではなく、Azure REST API を通じて公開されます。 詳細については、「 B2C テナント - 作成」を参照してください。

[前提条件]

  • MS Graph API を使用し、Azure AD B2C テナント内のリソースと対話するには、そのアクセス許可を付与するアプリケーション登録が必要です。 Microsoft Graph アプリケーションの登録に関する記事の手順に従って、管理アプリケーションで使用できるアプリケーション登録を作成します。

ユーザー管理

Azure AD B2C では現在、ディレクトリ オブジェクトに対する高度なクエリ機能はサポートされていません。 これは、クエリ パラメーター $count および $search と、not クエリ パラメーターの演算子 Not (ne)、Not equals (endsWith)、Ends with ($filter) がサポートされていないことを意味します。 詳細については、Microsoft Graph のクエリ パラメーターと Microsoft Graph の高度なクエリ機能を参照してください。

ユーザーの移行

このビデオでは、Microsoft Graph API を使用して Azure AD B2C へのユーザー移行を管理する方法について説明します。

ユーザー電話番号の管理

SMS または音声通話、または多要素認証を使用してサインインするためにユーザーが使用できる電話番号。 詳細については、「 Microsoft Entra 認証方法 API」を参照してください。

リスト操作では、有効な電話番号のみが返されることに注意してください。 リスト操作で使用するには、次の電話番号を有効にする必要があります。

正しく表された電話番号は、国番号と電話番号の間にスペースを入れた状態で保存されます。 現在、Azure AD B2C サービスでは、この領域は既定では追加されていません。

Azure portal のサンプル ユーザーの [認証方法] ページのスクリーンショット。電話番号のテキスト ボックスが強調表示されています。

セルフサービス パスワード リセットの電子メール アドレス

ユーザー名サインイン アカウントがパスワードをリセットするために使用できる電子メール アドレス。 詳細については、「 Microsoft Entra 認証方法 API」を参照してください。

ソフトウェア OATH トークン認証方法

ソフトウェア OATH トークンは、認証アプリを介した多要素認証に OATH 時間ベースのワンタイム パスワード (TOTP) 標準を使用するソフトウェア ベースの番号ジェネレーターです。 Microsoft Graph API を使用して、ユーザーに登録されたソフトウェア OATH トークンを管理します。

ID プロバイダー

Azure AD B2C テナントのユーザー フローで使用できる ID プロバイダー を管理します。

ユーザー フロー (ベータ)

サインアップ、サインイン、サインアップとサインインの組み合わせ、パスワードのリセット、プロファイルの更新のための事前構築済みポリシーを構成します。

ユーザー フロー認証方法 (ベータ)

ユーザーがローカル アカウントを使用して登録できるようにするメカニズムを選択します。 ローカル アカウントは、Azure AD B2C が ID アサーションを完了するアカウントです。 詳細については、「 b2cAuthenticationMethodsPolicy リソースの種類」を参照してください。

カスタム ポリシー (ベータ)

次の操作を使用すると、カスタム ポリシーと呼ばれる Azure AD B2C Trust Framework ポリシーを管理できます

ポリシー キー (ベータ)

Identity Experience Framework は、カスタム ポリシーで参照されるシークレットを格納して、コンポーネント間の信頼を確立します。 これらのシークレットには、対称キーまたは非対称キー/値を指定できます。 Azure portal では、これらのエンティティは ポリシー キーとして表示されます。

Microsoft Graph API のポリシー キーの最上位リソースは、 信頼できるフレームワーク キーセットです。 各 キーセット には、少なくとも 1 つの キーが含まれています。 キーを作成するには、まず空のキーセットを作成してから、キーセットにキーを生成します。 手動シークレットの作成、証明書のアップロード、または PKCS12 キーを使用できます。 キーには、生成されたシークレット、文字列 (Facebook アプリケーション シークレットなど)、またはアップロードする証明書を指定できます。 キーセットに複数のキーがある場合、アクティブなキーは 1 つだけです。

Trust Framework ポリシー キーセット

Trust Framework ポリシー キー

アプリケーション

アプリケーション拡張機能 (ディレクトリ拡張機能) のプロパティ

アプリケーション拡張機能のプロパティは、ディレクトリまたは Microsoft Entra 拡張機能とも呼ばれます。 Azure AD B2C でそれらを管理するには、 identityUserFlowAttribute リソースの種類 とそれに関連付けられているメソッドを使用します。

ユーザーごとに最大 100 個のディレクトリ拡張値を格納できます。 ユーザーのディレクトリ拡張機能プロパティを管理するには、Microsoft Graph で次の ユーザー API を 使用します。

  • ユーザーの更新: ディレクトリ拡張プロパティの値をユーザー オブジェクトに書き込むか、ユーザー オブジェクトから削除します。
  • ユーザーを取得する: ユーザーのディレクトリ拡張機能の値を取得します。 このプロパティは既定でbeta エンドポイントを通じて返されますが、$select エンドポイント経由のv1.0でのみ返されます。

ユーザー フローの場合、これらの拡張機能プロパティは Azure portal を使用して管理されます。 カスタム ポリシーの場合、Azure AD B2C は、ポリシーが初めて拡張プロパティに値を書き込む際に、プロパティを自動的に作成します。

Microsoft Entra ID では、ディレクトリ拡張機能は extensionProperty リソースの種類 とそれに関連付けられているメソッドを使用して管理されます。 ただし、更新すべきではない b2c-extensions-app アプリを介して B2C で使用されるため、 identityUserFlowAttribute リソースの種類 とそれに関連付けられているメソッドを使用して Azure AD B2C で管理されます。

テナントの使用状況

組織の 詳細の取得 API を使用して、ディレクトリ サイズのクォータを取得します。 次の HTTP 要求に示すように、 $select クエリ パラメーターを追加する必要があります。

GET https://graph.microsoft.com/v1.0/organization/organization-id?$select=directorySizeQuota

organization-idを組織またはテナント ID に置き換えます。

上記の要求への応答は、次の JSON スニペットのようになります。

{
    "directorySizeQuota": {
        "used": 156,
        "total": 1250000
    }
}

監査ログ

Azure AD B2C 監査ログへのアクセスの詳細については、「 Azure AD B2C 監査ログへのアクセス」を参照してください。

条件付きアクセス

削除されたユーザーとアプリケーションを取得または復元する

削除されたユーザーとアプリは、過去 30 日以内に削除された場合にのみ復元できます。

Microsoft Graph をプログラムで管理する方法

Microsoft Graph は、次の 2 つの方法で管理できます。

  • 委任されたアクセス許可 は、ユーザーまたは管理者が、アプリが要求するアクセス許可に同意します。 目的のリソースに対する呼び出しを行うときにサインインしたユーザーとして振る舞う権限を、アプリに委任します。
  • アプリケーションのアクセス許可 は、サインインしているユーザーが存在する必要がないアプリによって使用されます。 このため、管理者のみがアプリケーションのアクセス許可に同意できます。

ユーザー フローまたはカスタム ポリシーを使用してサインインするユーザーの委任されたアクセス許可は、Microsoft Graph API の委任されたアクセス許可に対しては使用できません。