ServiceNow Tickets Microsoft Graph コネクタ

ServiceNow Tickets 用の Microsoft Graph コネクタを使用すると、organizationはユーザーにサービスを提供するさまざまなチケットのインデックスを作成できます。 ServiceNow からコネクタとインデックス コンテンツを構成した後、エンド ユーザーは任意の Microsoft Search クライアントからそれらのチケットを検索できます。

この記事は、Microsoft 365 管理者または ServiceNow Tickets Graph コネクタを構成、実行、監視するユーザーを対象とします。 これは、Microsoft 365 管理センター記事の「Microsoft Graph コネクタのセットアップ」で提供される一般的な手順を補完します。 まだ行っていない場合は、"Graph コネクタのセットアップ" に関する記事全体を参照して、一般的なセットアップ プロセスを理解してください。

セットアップ プロセスの各手順と、一般的なセットアップ手順に従う必要があることを示すメモ、または トラブルシューティング と制限事項に関する情報を含む ServiceNow コネクタにのみ適用されるその他の手順を次に示 します

手順 1: Microsoft 365 管理センターにコネクタを追加します。

ServiceNow Tickets コネクタの追加

一般的な セットアップ手順に従います。

手順 2: 接続に名前を付けます。

一般的な セットアップ手順に従います。

手順 3: 接続設定

ServiceNow データに接続するには、organizationの ServiceNow インスタンス URL が必要です。 organizationの ServiceNow インスタンス URL は、通常、https://< our-organization-domain.service-now.com> のようになります。

この URL と共に、ServiceNow への接続を設定し、Microsoft Search が更新スケジュールに基づいてチケットの詳細を定期的に更新できるようにするための サービス アカウント が必要です。

ServiceNow では、タスク テーブルはチケット管理の基本クラスです。 インシデント、問題、変更管理などのチケット アプリケーションを作成するように拡張できます。 ServiceNow タスク テーブルの詳細については、こちらをご覧ください。

接続の構成に使用するサービス アカウントは、既定のチケット フィールドを正常にクロールするために、次の ServiceNow テーブル レコードへの読み取りアクセス権を 持っている必要があります

機能 読み取りアクセスに必要なテーブル 説明
インデックスの基本 タスク テーブル フィールド task 既定のフィールドを既定のタスク テーブルからクロールする場合
ユーザー テーブルを同期する sys_user チケットのユーザー アクセスの詳細にインデックスを作成するには

タスクテーブルの拡張テーブルからカスタム プロパティのインデックスを作成する場合は、sys_dictionaryとsys_db_objectへの読み取りアクセスを提供します。 これはオプションの機能です。 2 つの余分なテーブルにアクセスすることなく 、タスク テーブルのプロパティにインデックスを付けることができます。

機能 読み取りアクセスに必要なテーブル 説明
organizationからカスタム テーブルを選択する sys_db_object カスタム テーブルを含む拡張タスク テーブルの一覧を検索する
特定 <のtable_nameからカスタム フィールドにインデックスを作成する> sys_dictionary インシデント、問題、change_managementなど、特定のテーブルからカスタム フィールドをクロールする

Microsoft Search に接続するために使用するサービス アカウントの ロールを作成して割り当てることができますServiceNow アカウントにロールを割り当てる方法について説明します。 テーブルへの読み取りアクセス権は、作成されたロールに提供できます。 テーブル レコードへの読み取りアクセスを設定する方法については、「テーブル レコードの セキュリティ保護」を参照してください。

ServiceNow からコンテンツを認証して同期するには、サポートされている 3 つの方法のいずれかを 選択します。

  • 基本認証
  • ServiceNow OAuth (推奨)
  • OpenID Connect のMicrosoft Entra ID

手順 3.1: 基本認証

インスタンスに対する認証を行うテーブルと への task 読み取りアクセス権を持つ ServiceNow アカウントのユーザー名と sys_user パスワードを入力します。

手順 3.2: ServiceNow OAuth

ServiceNow OAuth を使用するには、ServiceNow 管理者が ServiceNow インスタンスでエンドポイントをプロビジョニングする必要があります。 その後、Microsoft Search アプリからアクセスできるようになります。 詳細については、ServiceNow ドキュメントの 「クライアントがインスタンスにアクセスするためのエンドポイントを作成 する」を参照してください。

次の表に、エンドポイント作成フォームに入力する方法に関するガイダンスを示します。

フィールド 説明 推奨値
名前 OAuth アクセスが必要なアプリケーションを識別する一意の値。 Microsoft Search
クライアント ID アプリケーションの読み取り専用の自動生成された一意の ID。 インスタンスは、アクセス トークンを要求するときにクライアント ID を使用します。 該当なし
クライアント シークレット この共有シークレット文字列を使用すると、ServiceNow インスタンスと Microsoft Search が相互の通信を承認します。 シークレットをパスワードとして扱うことで、セキュリティのベスト プラクティスに従います。
リダイレクト URL 承認サーバーがリダイレクトする必要なコールバック URL。 https://gcs.office.com/v1.0/admin/oauth/callback
ロゴ URL アプリケーション ロゴのイメージを含む URL。 該当なし
アクティブ [チェック] ボックスを選択して、アプリケーション レジストリをアクティブにします。 アクティブに設定する
更新トークンの有効期間 更新トークンが有効な秒数。 既定では、更新トークンの有効期限は 100 日 (8,640,000 秒) です。 31,536,000 (1 年間)
アクセス トークンの有効期間 アクセス トークンが有効な秒数。 43,200 (12 時間)

インスタンスに接続するクライアント ID とクライアント シークレットを入力します。 接続後、ServiceNow アカウントの資格情報を使用してクロールのアクセス許可を認証します。 アカウントには、少なくとも テーブルと sys_user テーブルへの読み取りアクセス権がtask必要です。 詳細な ServiceNow テーブル レコードへの読み取りアクセス権とインデックス ユーザー条件のアクセス許可を提供するための 接続設定については、手順 3 の冒頭の表を参照してください。

手順 3.3: OpenID Connect をMicrosoft Entra IDする

認証Microsoft Entra ID OpenID Connect を使用するには、次の手順に従います。

手順 3.3.1: Microsoft Entra IDに新しいアプリケーションを登録する

Microsoft Entra IDで新しいアプリケーションを登録する方法については、「アプリケーションの登録」を参照してください。 [シングル テナント組織ディレクトリ] を選択します。 リダイレクト URI は必要ありません。 登録後、アプリケーション (クライアント) ID とディレクトリ ID (テナント ID) をメモします。

手順 3.3.2: クライアント シークレットを作成する

クライアント シークレットの作成の詳細については、「クライアント シークレットの作成」を参照してください。 クライアント シークレットを書き留めます。

手順 3.3.3: サービス プリンシパル オブジェクト識別子を取得する

サービス プリンシパル オブジェクト識別子を取得する手順に従います

  1. PowerShell を実行します。

  2. 次のコマンドを使用してAzure PowerShellをインストールします。

    Install-Module -Name Az -AllowClobber -Scope CurrentUser
    
  3. Azure に接続します。

    Connect-AzAccount
    
  4. サービス プリンシパル オブジェクト識別子を取得します。

    Get-AzADServicePrincipal -ApplicationId "Application-ID"
    

    "Application-ID" を、手順 3.a で登録したアプリケーションのアプリケーション (クライアント) ID (引用符なし) に置き換えます。 PowerShell 出力からの ID オブジェクトの値に注意してください。 これはサービス プリンシパル ID です。

これで、Azure portalから必要なすべての情報が得ることができるようになりました。 情報の簡単な概要を次の表に示します。

プロパティ 説明
ディレクトリ ID (テナント ID) 手順 3.a. のMicrosoft Entra テナントの一意の ID。
アプリケーション ID (クライアント ID) 手順 3.a で登録されたアプリケーションの一意の ID。
クライアント シークレット アプリケーションの秘密キー (手順 3.b から)。 パスワードのように扱います。
サービス プリンシパル ID サービスとして実行されているアプリケーションの ID。 (手順 3.c から)

手順 3.3.4: ServiceNow アプリケーションを登録する

ServiceNow インスタンスには、次の構成が必要です。

  1. 新しい OAuth OIDC エンティティを登録します。 詳細については、「 OAuth OIDC プロバイダーの作成」を参照してください。

  2. 次の表は、OIDC プロバイダー登録フォームに入力する方法に関するガイダンスを示しています

    フィールド 説明 推奨値
    名前 OAuth OIDC エンティティを識別する一意の名前。 Microsoft Entra ID
    クライアント ID サード パーティの OAuth OIDC サーバーに登録されているアプリケーションのクライアント ID。 インスタンスは、アクセス トークンを要求するときにクライアント ID を使用します。 手順 3.a のアプリケーション (クライアント) ID
    クライアント シークレット サード パーティの OAuth OIDC サーバーに登録されているアプリケーションのクライアント シークレット。 手順 3.b のクライアント シークレット

    その他の値はすべて既定値にすることができます。

  3. OIDC プロバイダー登録フォームで、新しい OIDC プロバイダー構成を追加する必要があります。 OAuth OIDC プロバイダー構成フィールドに対して検索アイコンを選択して、OIDC 構成のレコードを開きます。 [新規]を選択します。

  4. 次の表は、OIDC プロバイダー構成フォームに入力する方法に関するガイダンスを示しています

    フィールド 推奨値
    OIDC プロバイダー Microsoft Entra ID
    OIDC メタデータ URL URL は tenandId">/.well-known/openid-configuration 形式https://login.microsoftonline.com/<である必要があります
    手順 3.a. の "tenantID" をディレクトリ ID (テナント ID) に置き換えます。
    OIDC 構成キャッシュの有効期間 120
    アプリケーション グローバル
    ユーザー要求 サブ
    ユーザー フィールド ユーザー ID
    JTI 要求の検証を有効にする 無効
  5. [送信] を選択し、OAuth OIDC エンティティ フォームを更新します。

手順 3.3.5: ServiceNow アカウントを作成する

ServiceNow アカウントを作成し、 ServiceNow でユーザーを作成する手順を参照してください。

次の表は、ServiceNow ユーザー アカウントの登録に記入する方法に関するガイダンスを示しています

フィールド 推奨値
ユーザー ID 手順 3.c のサービス プリンシパル ID
Web サービスへのアクセスのみ Checked

その他の値はすべて既定値のままにできます。

手順 3.3.6: ServiceNow アカウントのタスク、ユーザー テーブル アクセスを有効にする

ユーザー ID として ServiceNow プリンシパル ID を使用して作成した ServiceNow アカウントにアクセスし、読み取りアクセス権を と sys_user テーブルにtask割り当てます。 その他の ServiceNow テーブル レコードとインデックス カスタム フィールドへの読み取りアクセスを提供するための 接続設定については、手順 3 の冒頭の表を参照してください。

アプリケーション ID をクライアント ID (手順 3.a から) として使用し、M365 管理センターの構成ウィンドウでクライアント シークレット (手順 3.b から) を使用して、Microsoft Entra ID OpenID Connect を使用して ServiceNow インスタンスに対して認証します。

手順 4: テーブル、プロパティ、フィルター データを選択する

この手順では、ServiceNow データ ソースから使用可能なテーブルとプロパティを追加または削除できます。 Microsoft 365 では、既定でいくつかのテーブルとプロパティが既に選択されています。

ServiceNow クエリ文字列を使用すると、チケットを同期するための条件を指定できます。 SQL Select ステートメントの Where 句に似ています。 たとえば、過去 6 か月間に作成され、開いている状態のチケットにのみインデックスを付けることができます。 独自のクエリ文字列の作成については、「 フィルターを使用してエンコードされたクエリ文字列を生成する」を参照してください。

プレビュー結果ボタンを使用して、選択したプロパティとクエリ フィルターのサンプル値を確認します。

手順 5: 検索のアクセス許可を管理する

ServiceNow Tickets Graph コネクタでは、 このデータ ソースへのアクセス権を持つユーザーにのみ表示される検索アクセス許可がサポートされています。 インデックス付きチケットは検索結果に表示され、および フィールドを介してassigned_toopened_byアクセスできるユーザーに表示されます。

[このデータ ソースへのアクセス権を持つユーザーのみ] を選択する場合は、ServiceNow インスタンスにプロビジョニングされたユーザーと Azure 以外の AD ユーザー Microsoft Entra IDするかどうかをさらに選択する必要があります。

organizationに適したオプションを特定するには:

  1. ServiceNow ユーザーのEmail ID が、Microsoft Entra IDのユーザーの UserPrincipalName (UPN) と同じである場合は、Microsoft Entra ID オプションを選択します。
  2. ServiceNow ユーザーのメール ID が、Microsoft Entra IDのユーザーの UserPrincipalName (UPN) と異なる場合は、[Azure 以外の AD] オプションを選択します。

注:

  • ID ソースの種類としてMicrosoft Entra IDを選択した場合、コネクタは ServiceNow から直接取得したユーザーのEmail ID を、Microsoft Entra IDから UPN プロパティにマップします。
  • ID の種類に "非 Azure AD" を選択した場合は、ID のマッピング手順については、「 Azure 以外の AD ID を マップする」を参照してください。 このオプションを使用して、Email ID から UPN へのマッピング正規表現を指定できます。
  • アクセス許可を管理するユーザーまたはグループへの更新は、フル クロールでのみ同期されます。 増分クロールでは、現在、アクセス許可に対する更新の処理はサポートされていません。

手順 6: プロパティ ラベルを割り当てる

一般的な セットアップ手順に従います。

手順 7: スキーマを管理する

一般的な セットアップ手順に従います。

手順 8: 更新設定を選択する

一般的な セットアップ手順に従います。

注:

ID の場合は、スケジュールされたフル クロールのみが適用されます。

手順 9: 接続を確認する

一般的な セットアップ手順に従います。

接続を発行したら、検索結果ページをカスタマイズする必要があります。 検索結果のカスタマイズについては、「検索結果 のカスタマイズ」ページを参照してください。

制限事項

ServiceNow Tickets Microsoft Graph コネクタの最新リリースでは、次の制限があります。

  • [検索のアクセス許可の管理] ステップの [すべてのユーザー] 機能では、アクセス許可は処理されません。 分離された環境で選択したチーム メンバー間の接続をテストする場合を除き、このオプションを選択しないでください。

トラブルシューティング

接続を公開し、結果ページをカスタマイズしたら、管理センターの [データ ソース] タブの状態を確認できます。 更新と削除を行う方法については、「接続を監視する」をご覧ください。 よく見られる問題のトラブルシューティング手順を以下に示します。

1. シングル サインオンが有効な ServiceNow インスタンスが原因でログインできない

organizationで ServiceNow へのシングル サインオン (SSO) が有効になっている場合、サービス アカウントでのログインに問題が発生する可能性があります。 ServiceNow インスタンス URL にを追加 login.do することで、ユーザー名とパスワードベースのログインを表示できます。 例。 https://<your-organization-domain>.service-now.com./login.do

2. API 要求に対する未承認または禁止された応答

2.1. テーブル アクセス許可を確認する

接続状態に禁止または未承認の応答が表示される場合は、「手順 3: 接続設定」で説明されているテーブルへのアクセスがサービス アカウントに必要かどうかをチェックします。 テーブル内のすべての列に読み取りアクセス権があるかどうかを確認します。

2.2. アカウントパスワードの変更

Microsoft Graph コネクタは、クロールのためにサービス アカウントの代わりにフェッチされたアクセス トークンを使用します。 アクセス トークンは 12 時間ごとに更新されます。 接続の発行後にサービス アカウントのパスワードが変更されていないことを確認します。 パスワードに変更がある場合は、接続の再認証が必要になる場合があります。

2.3. ファイアウォールの内側に ServiceNow インスタンスが存在するかどうかを確認する

ネットワーク ファイアウォールの内側にある場合、Microsoft Graph コネクタが ServiceNow インスタンスに到達できない可能性があります。 コネクタ サービスへのアクセスを明示的に許可する必要があります。 次の表に、コネクタ サービスのパブリック IP アドレス範囲を示します。 テナントリージョンに基づいて、ServiceNow インスタンスネットワーク許可リストに追加します。

環境 Region Range
Prod 北アメリカ 52.250.92.252/30, 52.224.250.216/30
Prod ヨーロッパ 20.54.41.208/30, 51.105.159.88/30
Prod アジア太平洋 52.139.188.212/30, 20.43.146.44/30

2.4. アクセス許可が期待どおりに機能しない

検索結果に適用されるアクセス許可に不一致がある場合は、検索ユーザーが フィールドと opened_by フィールドのassigned_to一部であるかどうかを確認します。

3. このデータ ソースアクセス許可へのアクセス権を持つユーザーのみに関する 問題

3.1 ユーザー マッピングエラー

Microsoft Entra IDに Microsoft 365 ユーザーがいない ServiceNow ユーザー アカウントはマップされません。 ユーザー以外のサービス アカウントでは、ユーザー マッピングが失敗することが予想されます。 接続の詳細ウィンドウの ID 統計領域で、ユーザー マッピングエラーの数にアクセスできます。 失敗したユーザー マッピングのログは、[エラー] タブからダウンロードできます。