ServiceNow Knowledge Microsoft Graph コネクタ

ServiceNow 用 Microsoft Graph コネクタを使用すると、organizationでは、すべてのユーザーに表示されるナレッジ ベースの記事のインデックスを作成したり、organization内のユーザー条件のアクセス許可で制限したりできます。 ServiceNow からコネクタとインデックス コンテンツを構成した後、エンド ユーザーは Microsoft Copilot および任意の Microsoft Search クライアントからこれらの記事を検索できます。

このビデオを参照して、検索アクセス許可の管理における Graph コネクタの機能の詳細を確認することもできます。

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

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

必須および省略可能な設定

Microsoft Graph コネクタをすぐに使い始めるために、セットアップ プロセスの手順は次の 2 つのグループに分かれています。

必須の設定 - 接続を行うには、これらの手順の入力を指定する必要があります。 入力 (接続名、データ ソースの設定など) は、organizationのコンテキストとユース ケースによって異なります。

詳細設定 (省略可能) - 名前が示すように、詳細設定は省略可能な手順です。 便宜上、セットアップ プロセスのこれらの設定は、管理者が行った最も一般的な選択に基づいて既定値で事前構成されています。 既定値をそのまま使用することも、organizationのニーズに合わせて変更することもできます。

はじめに

ServiceNow ナレッジ コネクタの追加

(詳細については、一般的な セットアップ手順に関するページを参照してください)

必須の設定

1. 名前 & ID:

接続 ID: 必要に応じて接続 ID を編集します (既定の一意の文字列で事前入力)。 [保存して続行] ボタンをクリックした後は編集できません。

[名前]: 接続の名前を入力します (既定の名前で事前入力)。 後でいつでも編集できます (接続が発行された後でも)。

[名前] & ID フィールドのスクリーンショット。

2. データ ソースの設定:

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

データ ソース設定のスクリーンショット。

この URL と共に、ServiceNow への接続を設定し、Microsoft Search が更新スケジュールに基づいてナレッジ記事を定期的に更新できるようにするための サービス アカウント が必要です。 サービス アカウントでは、さまざまなエンティティを正常にクロールするために、次の ServiceNow テーブル レコード への読み取りアクセス権が必要です。

機能 読み取りアクセスに必要なテーブル 説明
すべてのユーザーが利用できるインデックスナレッジ記事 kb_knowledge ナレッジ記事をクロールする場合
ユーザー条件のアクセス許可のインデックス作成とサポート kb_uc_can_read_mtom このサポート情報を読めるユーザー
kb_uc_can_contribute_mtom このサポート情報に貢献できるユーザー
kb_uc_cannot_read_mtom このサポート情報を読むことができないユーザー
kb_uc_cannot_contribute_mtom このサポート情報に貢献できないユーザー
sys_user ユーザー テーブルの読み取り
sys_user_has_role ユーザーのロール情報を読み取る
sys_user_grmember ユーザーのグループ メンバーシップを読み取る
user_criteria ユーザー条件のアクセス許可の読み取り
kb_knowledge_base サポート情報情報を読み取る
sys_user_group ユーザー グループ セグメントの読み取り
sys_user_role ユーザー ロールの読み取り
cmn_location 位置情報の読み取り
cmn_department 部署の情報を読む
core_company 会社の属性を読み取る
拡張テーブルのプロパティのインデックス作成 (省略可能) sys_db_object 拡張テーブルの詳細を読み取る
sys_dictionary 拡張テーブルのプロパティを読み取る

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

kb_knowledgeの 拡張テーブル からプロパティにインデックスを作成する場合は、 sys_dictionaryとsys_db_objectへの読み取りアクセスを提供します。 これは省略可能な機能です。 2 つの追加 のテーブルに アクセスすることなく、テーブル プロパティkb_knowledgeインデックスを作成できます。

注:

ServiceNow Microsoft Graph コネクタでは、高度なスクリプトを使用せずに、ナレッジ記事とユーザー条件のアクセス許可にインデックスを付けることができます。 ユーザー条件に高度なスクリプトが含まれている場合、関連するすべてのナレッジ記事は検索結果から非表示になります。

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

  • [ 基本認証]

  • ServiceNow OAuth (推奨)

  • OpenID Connect のMicrosoft Entra ID

    1. 基本認証

    インスタンスに対して認証する ナレッジ ロールを持つ ServiceNow アカウントのユーザー名とパスワードを入力します。

    2. ServiceNow OAuth

    認証に ServiceNow OAuth を使用するには、次の手順に従います。

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

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

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

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

    3. OpenID Connect のMicrosoft Entra ID

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

    1. Microsoft Entra IDで新しいアプリケーションを登録する

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

    2. クライアント シークレットを作成する

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

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

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

      プロパティ 説明
      ディレクトリ ID (テナント ID) 手順 3.a. のMicrosoft Entra テナントの一意の ID。
      アプリケーション ID (クライアント ID) 手順 3.a で登録されたアプリケーションの一意の ID。
      クライアント シークレット アプリケーションの秘密キー (手順 3.b から)。 パスワードのように扱います。
      サービス プリンシパル ID サービスとして実行されているアプリケーションの ID。 (手順 3.c から)
    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/<である必要があります
        "tenantID" を手順 3.a のディレクトリ (テナント) ID に置き換えます。
        OIDC 構成キャッシュの有効期間 120
        アプリケーション グローバル
        ユーザー要求 サブ
        ユーザー フィールド ユーザー ID
        JTI 要求の検証を有効にする 無効
      5. [送信] を選択し、OAuth OIDC エンティティ フォームを更新します。

    5. ServiceNow アカウントを作成する

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

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

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

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

    6. ServiceNow アカウントのナレッジ ロールを有効にする

      ServiceNow プリンシパル ID をユーザー ID として使用して作成した ServiceNow アカウントにアクセスし、ナレッジ ロールを割り当てます。 ServiceNow アカウントにロールを割り当てる手順については、 ユーザーにロールを割り当てる方法に関するページを参照してください。 その他の ServiceNow テーブル レコードへの読み取りアクセス権とインデックス ユーザー条件のアクセス許可を提供するには 、「手順 2: データ ソース設定 」の先頭にある表を参照してください。

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

3. アクセス許可

ServiceNow コネクタでは、このデータ ソースへのアクセス権を持つ すべてのユーザー または 唯一のユーザーに表示されるアクセス許可がサポートされています。 インデックス付きデータは検索結果に表示され、organizationのすべてのユーザー、またはユーザー条件のアクセス許可を介してアクセスできるユーザーに表示されます。 ナレッジ記事がユーザー条件で有効になっていない場合は、organizationのすべてのユーザーの検索結果に表示されます。

アクセス許可を示すスクリーンショット。

ServiceNow のサポート技術情報記事にアクセスするには、ユーザーには記事レベルのアクセス許可と KB レベルのアクセス許可の両方が必要です。 ServiceNow ナレッジ ベース コネクタを使用する場合、アーティクル レベルの制限がない場合は、サポート技術情報レベルのアクセス許可が適用されます。 ただし、記事レベルの制限がある場合は、サポート技術情報レベルの制限よりも優先されます。

重要

  • コネクタでは、高度なスクリプトを使用しない既定のユーザー条件アクセス許可がサポートされています。 コネクタが高度なスクリプトを使用してユーザー条件を検出すると、そのユーザー条件を使用するすべてのデータが検索結果に表示されません。
  • コネクタでは、ナレッジ ベース レベルとアーティクル レベルのアクセス許可の積集合は適用されず、代わりにアーティクル レベルのアクセス許可が直接適用されます。

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

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

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

注:

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

詳細設定 (省略可能)

1. プロパティを選択する

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

プロパティを選択する方法を示すスクリーンショット。

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

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

2. マップ ID

この手順では、Microsoft Entra ID ID と非Microsoft Entra ID ID の両方の ID をマップできます。

  • ID ソースの種類としてMicrosoft Entra IDを選択した場合、コネクタは ServiceNow から直接取得したユーザーのEmail ID を、Microsoft Entra IDから UPN プロパティにマップします。
  • ID の種類に "非 AAD" を選択した場合、ID のマッピング手順については、「 Azure 以外の AD ID を マップする」を参照してください。

3. プロパティ ラベルを割り当てる

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

4. スキーマを管理する

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

5. 設定を更新する

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

注:

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

発行 & 確認する

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

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

制限事項

重要

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

  • [検索アクセス許可の管理] ステップでこのデータ ソース機能にアクセスできるユーザーのみが、ユーザー条件のアクセス許可のみを処理します。 その他の種類のアクセス許可は検索結果に適用されません。
  • 高度なスクリプトを含むユーザー条件は、現在のバージョンではサポートされていません。 このようなアクセス制限を持つナレッジ記事には、すべてのユーザーのアクセスを拒否するインデックスが付けられます。つまり、サポートされるまで検索結果には表示されません。

トラブルシューティング

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

1. 単一の Sign-On が有効な ServiceNow インスタンスが原因でログインできない

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

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

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

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

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. アクセス許可が期待どおりに機能しない

検索結果に適用されるアクセス許可に不一致がある場合は、 ナレッジ ベースと記事へのアクセスを管理する際のユーザー条件のアクセスフロー チャートを確認します。

3. サポート ポータルでナレッジ記事の URL を変更して表示する

ServiceNow Knowledge コネクタは、sys_idを使用して AccessUrl プロパティを <instance_url>/kb_view.do?sys_kb_id<sysId> 形式で計算します。 バックエンド システム ビューでナレッジ記事が開きます。 記事を別の URL にリダイレクトする場合は、次の手順に従います。

3.1 結果の種類を編集する

Microsoft 365 管理センターの [検索 & インテリジェンス] セクションの [カスタマイズ] タブで、ServiceNow ナレッジ接続用に構成された結果の種類を編集します。 結果の種類の編集

[結果の種類の編集] ダイアログが開いたら、結果レイアウト セクションの横にある [編集 ] をクリックします。 結果レイアウトの編集

3.2 アイテム ブロックを見つける

と の値を持つ text プロパティを含む items ブロックをshortDescriptionAccessUrl検索します。

結果の種類でアイテム ブロックを編集する

3.3 AccessUrl プロパティの編集

宛先 URL を変更するには、items ブロックの text プロパティの一部を編集 AccessUrl します。 たとえば、ServiceNow ナレッジ記事をサービス URL ポータルのプレフィックスである 場所sphttps://contoso.service-now.com/spリダイレクトする必要がある場合は、次の手順に従います。

元の値 新しい値
"[{shortdescription}]({AccessUrl})" "[{shortdescription}](https://contoso.service-now.com/sp?id=kb_article_view&sysparm_article={number})"

ここで number 、ナレッジ 記事番号プロパティを指定します。 接続の作成時に、[スキーマの管理] 画面で 取得 としてマークする必要があります。

結果の種類の更新の確認を完了し、[ 送信] をクリックします。 変更を受け取るために 1 分または 2 分を与えます。 検索結果が目的の URL にリダイレクトされます。

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

4.1 このデータ ソースにアクセスできるユーザーのみを選択できない

手順 2: データ ソース設定で必要なテーブルに対する読み取りアクセス許可がサービス アカウントにない場合は、[このデータ ソースにアクセスできるユーザーのみ] オプションを選択できない場合があります。 サービス アカウントが[インデックス] に記載されているテーブルを読み取り、 ユーザー条件のアクセス許可機能をサポート できるかどうかを確認します。

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

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

5. ユーザー条件のアクセス フローに関する問題

ServiceNow と Microsoft Search の間でユーザー条件の検証に違いがある場合は、システム プロパティを にno設定glide.knowman.block_access_with_no_user_criteriaします。

その他の問題がある場合、またはフィードバックを提供したい場合は、 aka.ms/TalkToGraphConnectors