次の方法で共有


ServiceNow Knowledge Copilot コネクタに関する問題のトラブルシューティング

ServiceNow Knowledge Microsoft 365 Copilot コネクタを使用すると、組織は ServiceNow サポート情報記事を Microsoft 365 Copilot と検索エクスペリエンスにインデックスを作成できます。 この記事では、ServiceNow Knowledge コネクタをデプロイするときに発生する可能性がある一般的なエラーのトラブルシューティング情報を提供します。

エラーのトラブルシューティングに役立つ ServiceNow 構成情報を確認するには、「 コネクタ インジェスト用に ServiceNow サービスを設定する」を参照してください。

  1. 記事を検索するユーザーが、ServiceNow ナレッジ記事にアクセスするために必要なアクセス許可を持っているかどうかを判断します。 ServiceNow のユーザー条件診断ツールを使用します。

  2. ユーザーがMicrosoft Entra ID に正しくマップされているかどうかを判断します。 マッピングの問題は、[エラー] タブで2006エラーとして表示されます。ユーザー マッピングの数式を確認し、必要に応じて更新します。

    マッピング ID エラーのスクリーンショット。

  3. いずれかのユーザー条件の高度なスクリプトが記事へのアクセスを許可するかどうかを判断します。 高度なスクリプトは現在サポートされていません。

    1. サポート情報 レベルのいずれかのCannot Readユーザー条件で高度なスクリプトが構成されている場合、サポート情報内のすべてのアーティクルに、インデックス付きデータの拒否アクセスがスタンプされます。

    2. アーティクル レベルのいずれかの Cannot Read ユーザー条件で高度なスクリプトが構成されている場合、アーティクルにはインデックス付きデータのアクセス拒否がスタンプされます。

  4. 空の条件がサポート情報レベル (Cannot ReadCannot Contribute) に存在するかどうかを判断します。 商品レベルで空の条件が存在するかどうかを判断する - Cannot Read。 空の条件は、空のフィールドを持つユーザー条件です。 空の条件が存在する場合、アーティクルにはインデックス付きデータのアクセス拒否がスタンプされます。

  5. 根本原因を特定できない場合は、次の詳細を 含む Copilot コネクタ サポート チーム にお問い合わせください。

    1. テナント ID
    2. 接続 ID
    3. 記事 Sys ID
    4. ナレッジ ベースの Sys ID
    5. サポート情報収集の場合:
      1. kb_uc_can_read_mtom (ナレッジ ベースを読み取ることができるユーザー) テーブルで使用できるユーザー条件の一覧sys_id
      2. kb_uc_cannot_read_mtom (ナレッジ ベースを読み取ることができないユーザー) テーブルで使用できるユーザー条件の一覧sys_id
      3. kb_uc_cannot_contribute_mtom (ナレッジ ベースに投稿できないユーザー) テーブルで使用できるユーザー条件の一覧sys_id
      4. kb_uc_can_contribute_mtomで使用できるユーザー条件sys_id一覧
    6. また、手順 3 で収集sys_id項目については、次を共有します。
      1. 記事の [can_read_user_criteria] フィールドにsys_idユーザー条件の一覧
      2. 記事の [cannot_read_user_criteria] フィールドにsys_idユーザー条件の一覧

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

organizationで ServiceNow へのシングル サインオン (SSO) が使用されている場合、サービス アカウントでのサインインに問題が発生する可能性があります。 ServiceNow インスタンス URL に login.do を追加することで、ユーザー名とパスワードベースの認証を表示できます。 たとえば、「 https://<your-organization-domain>.service-now.com./login.do 」のように入力します。

ServiceNow インスタンスに接続できない

接続状態で禁止または未承認の応答が発生する理由は次のとおりです。

  1. 正しくないアカウント パスワード: 基本認証を使用する場合、指定した資格情報が正しくない可能性があります。 資格情報をもう一度確認します。

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

  2. テーブル アクセス許可: サービス アカウントが、「前提条件」で説明されているテーブルに必要なアクセス権を持っているかどうかを確認 します。 サービス アカウントが列内のすべてのテーブルに 対する "読み取り" アクセス権 を持っているかどうかを確認します。

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

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

ナレッジ記事の URL を変更する

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

  1. Microsoft 365 管理センターの [コネクタ] タブで、ServiceNow Knowledge 接続用に構成された結果の種類を編集します。

    [結果の種類] を編集するためにクリックする場所を示すスクリーンショット

  2. [ 結果の種類の編集 ] ダイアログ ボックスで、結果レイアウト セクションの横にある [編集 ] を選択します。

    結果レイアウトを編集する方法を示すスクリーンショット

  3. shortDescription値とAccessUrl値を持つ text プロパティを含む items ブロックを検索します。

    結果の種類でアイテム ブロックを見つける方法を示すスクリーンショット

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

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

    ここで、 number はナレッジ記事番号プロパティです。 接続を作成するときに、[コンテンツ] タブの [スキーマ] セクションで 取得 済みとしてマークします。

  5. 結果の種類の更新の確認を完了し、[送信] を選択 します。 変更が有効になるまで 1 ~ 2 分待ちます。 検索結果が適切な URL にリダイレクトされるようになりました。

アクセス許可の Only people with access to this data source に関する問題

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

OAuth プロセスの完了時に [ログアウトが正常に完了しました] ウィンドウが表示される

OAuth プロセスを完了すると、ServiceNow 資格情報の入力を求めず に [ログアウトが正常に 完了] ウィンドウが表示されることがあります。

既定では、ServiceNow は、ブラウザー認証からのシングル サインオン (SSO) を使用して、Microsoft 365 管理者資格情報を使用して接続しようとします。 この既定の設定により、接続が失敗する可能性があります。 その結果、[ログアウト] ウィンドウ が正常に 表示されます。

[ログアウトが正常に完了しました] ウィンドウを示すスクリーンショット

この問題を解決するには、次の手順を実行します。

  1. プライベート ブラウザー ウィンドウを開き、ServiceNow 資格情報でサインインします。

  2. 新しいタブで、Microsoft 365 管理 センターにサインインします。 この手順により、ServiceNow SSO はサインアウトし、必要に応じて資格情報を切り替えることができます。

  3. OAuth 構成をもう一度試してください。 接続を承認するには、次のウィンドウが表示されます。

    [Oauth 構成] ウィンドウを示すスクリーンショット

    問題がある場合、またはフィードバックを提供する場合は、Microsoft Graph にお問い合わせください |サポート

特定のテーブルへのアクセス権がありません

適切なアクセス権がないと、クローラーはすべてのコンテンツにインデックスを付けず、アクセス許可を正確に付与できない可能性があります。 この問題のトラブルシューティングを行うには、ServiceNow 管理者である必要があります。

REST API エクスプローラーを使用してテーブルのアクセス許可を検証するには、次の手順に従います。

  1. ServiceNow インスタンスで作成したクロール アカウントを偽装します。

    アカウントに次のロールがあることを確認します: rest_api_explorerweb_service_admin

  2. System Web Services>REST>REST API エクスプローラーに移動します。

  3. エラー メッセージに記載されているテーブルのいずれかを選択します。

    [REST API エクスプローラー] ページを示すスクリーンショット。

  4. sysparm_limit10 に設定します (テストの結果を制限する場合)。

    [sysparm_light] フィールドを示すスクリーンショット。

  5. [ 送信] を選択します

  6. 応答を確認します。

    • 403 Status Codeを受け取った場合テーブルへのアクセスが許可されていないことを示すエラー メッセージについては、「テーブル レベルのアクセスを提供するためのテーブル アクセスの許可」を参照してください。
    • 200 Status Codeを受け取った場合ただし、応答本文には空の結果 (フィールドなしなど) が含まれていますが、行アクセスは存在しますが、フィールド レベルのアクセス権がありません。 フィールド レベルのアクセス権を付与するには、「 フィールド レベルのアクセスを許可する」を参照してください。

    [応答] セクションを示すスクリーンショット。

    ドロップダウンにテーブル名が表示されない場合は、テーブル自体へのアクセスが不足している可能性があります。

    または、ブラウザーを使用してアクセスを確認することもできます。

    1. シークレット ブラウザー ウィンドウを開きます。
    2. 次の URL を入力します (プレースホルダーを適切な値に置き換えます): https://<instance-url>/api/now/table/<table_name>?sysparm_limit=10
    3. メッセージが表示されたら、クロール アカウントの資格情報を使用してサインインします。
    4. 応答を確認します。 応答またはエラーが表示されない場合、アカウントには必要なアクセス権がありません。