次の方法で共有


Graph Explorer を使用した API 駆動インバウンド プロビジョニングのクイックスタート

このチュートリアルでは、Microsoft Graph Explorer を使用して API 主導の受信プロビジョニングをすばやくテストする 方法について説明します。

前提条件

注意

このプロビジョニング API は、主にアプリケーションまたはサービス内で使用するためのものです。 テナント管理者は、サービス プリンシパルまたはマネージド ID を構成して、アップロードを実行するアクセス許可を付与できます。 この API には、個別のユーザー割り当て可能な Microsoft Entra 組み込みディレクトリ ロールはありません。 管理者の同意を得て SynchronizationData-User.Upload アクセス許可を取得したアプリケーション以外では、 ユーザー管理者 ロールを持つ管理者ユーザーが API を呼び出すことができます。 このチュートリアルでは、テスト セットアップでユーザー管理者ロールを使用して API をテストする方法について説明します。

ユーザー データを受信プロビジョニング API にアップロードする

  1. 新しいブラウザー タブまたはブラウザー ウィンドウを開きます。

  2. URL https://aka.ms/ge を起動して Microsoft Graph Explorer にアクセスします。

  3. ユーザー プロファイル アイコンを選択してサインインします。

    ユーザー プロファイル アイコンを示す画像。

  4. ユーザー管理者ロールアクセス権を持つユーザー アカウントでログイン プロセスを完了します。

  5. ログインに成功すると、テナント情報にテナント名が表示されます。

    テナント名のスクリーンショット。

    これで、API を呼び出す準備ができました。

  6. API 要求パネルで、HTTP 要求の種類を POST に設定します。

  7. プロビジョニング アプリの概要ページから取得したプロビジョニング API エンドポイントをコピーして貼り付けます。

  8. [要求ヘッダー] パネルで、 Content-Type = application/scim+json の新しいキー値ペアを追加します。 要求ヘッダー パネルのスクリーンショット。

  9. [要求本文] パネルで、SCIM Enterprise ユーザー スキーマを使用して一括要求をコピーして貼り付けます

  10. [クエリの 実行 ] ボタンを選択して、プロビジョニング API エンドポイントに要求を送信します。

  11. 要求が正常に送信されると、API エンドポイントから Accepted 202 応答が返されます。

  12. [応答ヘッダー] パネルを開き、location 属性の URL 値をコピーします。 これは、一括要求に存在するユーザーのプロビジョニング状態をチェックするためにクエリを実行できるプロビジョニング ログの API エンドポイントを指します。

一括要求ペイロードの処理を確認する

リクエストボディ

{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:BulkRequest"],
    "Operations": [
    {
        "method": "POST",
        "bulkId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
        "path": "/Users",
        "data": {
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
            "externalId": "701984",
            "userName": "bjensen@example.com",
            "name": {
                "formatted": "Ms. Barbara J Jensen, III",
                "familyName": "Jensen",
                "givenName": "Barbara",
                "middleName": "Jane",
                "honorificPrefix": "Ms.",
                "honorificSuffix": "III"
            },
            "displayName": "Babs Jensen",
            "nickName": "Babs",
            "emails": [
            {
              "value": "bjensen@example.com",
              "type": "work",
              "primary": true
            }
            ],
            "addresses": [
            {
              "type": "work",
              "streetAddress": "100 Universal City Plaza",
              "locality": "Hollywood",
              "region": "CA",
              "postalCode": "91608",
              "country": "USA",
              "formatted": "100 Universal City Plaza\nHollywood, CA 91608 USA",
              "primary": true
            }
            ],
            "phoneNumbers": [
            {
              "value": "555-555-5555",
              "type": "work"
            }
            ],
            "userType": "Employee",
            "title": "Tour Guide",
            "preferredLanguage": "en-US",
            "locale": "en-US",
            "timezone": "America/Los_Angeles",
            "active":true,
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
                 "employeeNumber": "701984",
                 "costCenter": "4130",
                 "organization": "Universal Studios",
                 "division": "Theme Park",
                 "department": "Tour Operations",
                 "manager": {
                     "value": "89607",
                     "displayName": "John Smith"
                 }
            }
        }
    },
    {
        "method": "POST",
        "bulkId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
        "path": "/Users",
        "data": {
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
            "externalId": "701985",
            "userName": "Kjensen@example.com",
            "name": {
                "formatted": "Ms. Kathy J Jensen, III",
                "familyName": "Jensen",
                "givenName": "Kathy",
                "middleName": "Jane",
                "honorificPrefix": "Ms.",
                "honorificSuffix": "III"
            },
            "displayName": "Kathy Jensen",
            "nickName": "Kathy",
            "emails": [
            {
              "value": "kjensen@example.com",
              "type": "work",
              "primary": true
            }
            ],
            "addresses": [
            {
              "type": "work",
              "streetAddress": "100 Oracle City Plaza",
              "locality": "Hollywood",
              "region": "CA",
              "postalCode": "91618",
              "country": "USA",
              "formatted": "100 Oracle City Plaza\nHollywood, CA 91618 USA",
              "primary": true
            }
            ],
            "phoneNumbers": [
            {
              "value": "555-555-5545",
              "type": "work"
            }
            ],
            "userType": "Employee",
            "title": "Tour Lead",
            "preferredLanguage": "en-US",
            "locale": "en-US",
            "timezone": "America/Los_Angeles",
            "active":true,
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
                 "employeeNumber": "701985",
                 "costCenter": "4130",
                 "organization": "Universal Studios",
                 "division": "Theme Park",
                 "department": "Tour Operations",
                 "manager": {
                     "value": "701984",
                     "displayName": "Barbara Jensen"
                 }
            }
        }
    }
],
    "failOnErrors": null
}
処理を確認するには、Microsoft Entra 管理センターまたは Graph Explorer を使用します。

Microsoft Entra 管理センターから処理を確認する

  1. 少なくともアプリケーション管理者のログイン資格情報を使用して、Microsoft Entra 管理センターにログインします。

  2. Entra ID>Enterprise アプリを開く。

  3. すべてのアプリケーションで、検索フィルター テキスト ボックスを使用して、API 駆動プロビジョニング アプリケーションを見つけて開きます。

  4. [プロビジョニング] ブレードを開きます。 ランディング ページに最後の実行の状態が表示されます。

  5. [ プロビジョニング ログの表示] を選択して、[プロビジョニング ログ] ブレードを開きます。 または、メニュー オプション モニター>ログのプロビジョニングを選択することもできます。

    メニューのプロビジョニング ログのスクリーンショット。

  6. プロビジョニング ログ内の任意のレコードを選択して、追加の処理の詳細を表示します。

  7. プロビジョニング ログの詳細画面に、特定のユーザーに対して実行されたすべての手順が表示されます。

    • [ API からのインポート ] ステップで、一括要求から抽出されたユーザー データの詳細を確認します。
    • [ユーザーの照合] ステップには、一致する識別子に基づいて、ユーザーの一致の詳細が表示されます。 ユーザー マッチが発生した場合、プロビジョニング サービスは更新操作を実行します。 ユーザーが一致しない場合、プロビジョニング サービスは作成操作を実行します。
    • [ ユーザーがスコープ内にあるかどうかを確認 する] ステップには、スコープ フィルターの評価の詳細が表示されます。 既定では、すべてのユーザーが処理されます。 スコープ フィルターを設定した場合 (たとえば、営業部門に属するユーザーのみを処理する)、スコープ フィルターの評価の詳細がこの手順で表示されます。
    • ユーザーのプロビジョニングステップでは、ユーザーアカウントに適用された最終処理ステップと変更が指摘されます。
    • [ 変更されたプロパティ ] タブを使用して、属性の更新を表示します。

Graph Explorer のプロビジョニング ログ API を使用して処理を確認する

プロビジョニング API 呼び出しの location 応答ヘッダーの一部として返されたプロビジョニング ログの API URL を使用して、処理を検査できます。

  1. Graph エクスプローラーの [要求 URL ] テキスト ボックスに、プロビジョニング API エンドポイントによって返された場所の URL をコピーして貼り付けます。または、次の形式を使用して構築できます。 https://graph.microsoft.com/beta/auditLogs/provisioning/?$filter=jobid eq '<jobId>' プロビジョニング アプリの概要ページから jobId を取得できます。
  2. GET メソッドを使用し、[クエリの実行] を選択してプロビジョニング ログを取得します。 既定では、返される応答にはすべてのログ レコードが含まれます。
  3. 追加のフィルターを設定することで、特定の期間の後、または特定の状態値を持つデータのみを取得できます。 https://graph.microsoft.com/beta/auditLogs/provisioning/?$filter=jobid eq '<jobId> and statusInfo/status eq 'failure' and activityDateTime ge 2022-10-10T09:47:34Z また、ソース アンカー/結合プロパティとして使用されるソース システムで使用される externalId 値によって、ユーザーの状態をチェックすることもできます。 https://graph.microsoft.com/beta/auditLogs/provisioning/?$filter=jobid eq '<jobId>' and sourceIdentity/id eq '701984'

付録

SCIM エンタープライズ ユーザー スキーマによる一括要求

次の一括要求では、SCIM 標準コア ユーザースキーマとエンタープライズ ユーザー スキーマが使用されます。

リクエストボディ

{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:BulkRequest"],
    "Operations": [
    {
        "method": "POST",
        "bulkId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
        "path": "/Users",
        "data": {
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
            "externalId": "701984",
            "userName": "bjensen@example.com",
            "name": {
                "formatted": "Ms. Barbara J Jensen, III",
                "familyName": "Jensen",
                "givenName": "Barbara",
                "middleName": "Jane",
                "honorificPrefix": "Ms.",
                "honorificSuffix": "III"
            },
            "displayName": "Babs Jensen",
            "nickName": "Babs",
            "emails": [
            {
              "value": "bjensen@example.com",
              "type": "work",
              "primary": true
            }
            ],
            "addresses": [
            {
              "type": "work",
              "streetAddress": "100 Universal City Plaza",
              "locality": "Hollywood",
              "region": "CA",
              "postalCode": "91608",
              "country": "USA",
              "formatted": "100 Universal City Plaza\nHollywood, CA 91608 USA",
              "primary": true
            }
            ],
            "phoneNumbers": [
            {
              "value": "555-555-5555",
              "type": "work"
            }
            ],
            "userType": "Employee",
            "title": "Tour Guide",
            "preferredLanguage": "en-US",
            "locale": "en-US",
            "timezone": "America/Los_Angeles",
            "active":true,
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
                 "employeeNumber": "701984",
                 "costCenter": "4130",
                 "organization": "Universal Studios",
                 "division": "Theme Park",
                 "department": "Tour Operations",
                 "manager": {
                     "value": "89607",
                     "displayName": "John Smith"
                 }
            }
        }
    },
    {
        "method": "POST",
        "bulkId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
        "path": "/Users",
        "data": {
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
            "externalId": "701985",
            "userName": "Kjensen@example.com",
            "name": {
                "formatted": "Ms. Kathy J Jensen, III",
                "familyName": "Jensen",
                "givenName": "Kathy",
                "middleName": "Jane",
                "honorificPrefix": "Ms.",
                "honorificSuffix": "III"
            },
            "displayName": "Kathy Jensen",
            "nickName": "Kathy",
            "emails": [
            {
              "value": "kjensen@example.com",
              "type": "work",
              "primary": true
            }
            ],
            "addresses": [
            {
              "type": "work",
              "streetAddress": "100 Oracle City Plaza",
              "locality": "Hollywood",
              "region": "CA",
              "postalCode": "91618",
              "country": "USA",
              "formatted": "100 Oracle City Plaza\nHollywood, CA 91618 USA",
              "primary": true
            }
            ],
            "phoneNumbers": [
            {
              "value": "555-555-5545",
              "type": "work"
            }
            ],
            "userType": "Employee",
            "title": "Tour Lead",
            "preferredLanguage": "en-US",
            "locale": "en-US",
            "timezone": "America/Los_Angeles",
            "active":true,
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
                 "employeeNumber": "701985",
                 "costCenter": "4130",
                 "organization": "Universal Studios",
                 "division": "Theme Park",
                 "department": "Tour Operations",
                 "manager": {
                     "value": "701984",
                     "displayName": "Barbara Jensen"
                 }
            }
        }
    }
],
    "failOnErrors": null
}

次のステップ