Partilhar via


Configurar o serviço de ServiceNow para ingestão de conectores de conhecimento ServiceNow

O conector ServiceNow knowledge Microsoft 365 Copilot permite que as organizações indexem ServiceNow artigos de base de dados de conhecimento em experiências de pesquisa e Microsoft 365 Copilot. Este artigo fornece informações sobre os passos de configuração que ServiceNow administradores têm de concluir antes de a sua organização implementar o conector de Conhecimento ServiceNow.

Para obter informações sobre como implementar o conector, veja Deploy the ServiceNow Knowledge connector (Implementar o conector de Conhecimento do ServiceNow).

Lista de verificação de configuração

As seguintes listas de verificação listam os passos envolvidos na configuração do ambiente e na configuração dos pré-requisitos do conector.

Configurar o ambiente

Tarefa Função
Identificar o URL da instância ServiceNow administrador
Identificar a configuração do portal ServiceNow administrador
Definir mapeamento de atributos ServiceNow administrador
Verificar a existência de scripts avançados e permissões hierárquicas ServiceNow administrador

Configurar pré-requisitos

Tarefa Função
Criar uma conta de serviço e configurar permissões ServiceNow administrador
Verificar as permissões da conta de serviço ServiceNow administrador
Identificar a contagem de itens para ingestão ServiceNow administrador
Configurar a API REST ServiceNow administrador
Configurar permissões hierárquicas ServiceNow administrador
Adicionar o endereço IP do Microsoft 365 à lista de permissões ServiceNow administrador/Administrador de rede
Resolver problemas com a configuração do SSO ServiceNow administrador

Configurar o ambiente de ServiceNow

As secções seguintes descrevem as tarefas de administrador para configurar o ambiente de ServiceNow para ativar e otimizar a ligação.

Identificar o URL da instância do ServiceNow

Geralmente, o URL da instância ServiceNow tem o seguinte formato:

https://<your-organization-name>.service-now.com

Para verificar o URL da instância do ServiceNow, marcar o dashboard de administração do ServiceNow ou o URL de início de sessão utilizado pela sua organização.

Se tiver um URL personalizado:

  • Na sua instância ServiceNow, aceda a Todos os>URLs Personalizados doURL> Personalizado.

Identificar a configuração do portal ServiceNow

Por predefinição, quando os utilizadores selecionam ligações geradas pelo Copilot para ServiceNow conteúdo, os URLs seguem o formato padrão:

https://<your-organization-name>.service-now.com/kb_view.do?sys_kb_id=bf1ab5ee47c31e90af178339736d

Se a sua organização utilizar um URL diferente, pode personalizar o URL quando implementar o conector. Para obter mais informações, veja Personalizar valores para determinadas propriedades de esquema.

Definir ServiceNow mapeamento de atributos

Por predefinição, Microsoft Entra ID mapeia identidades da sua origem de dados ao verificar se o ID de e-mail de ServiceNow utilizadores corresponde ao nome principal de utilizador (UPN) ou ao atributo Correio no Microsoft Entra ID.

Se este mapeamento predefinido não corresponder às necessidades da sua organização, pode definir uma fórmula de mapeamento personalizada. Para obter mais informações, consulte Mapear as suas identidades não-Entra ID.

Verificar a existência de scripts avançados e permissões hierárquicas no ServiceNow

Determine se os artigos de conhecimento no seu ambiente ServiceNow têm as seguintes definições:

  • Scripts avançados ativados nos Critérios do Utilizador
  • As permissões hierárquicas estão configuradas

Estas definições podem afetar o comportamento de indexação e o controlo de acesso quando o conteúdo é apresentado em experiências do Microsoft 365, como o Copilot.

Para determinar se algum Critério de Utilizador tem scripts avançados ativados, execute a seguinte chamada à API:

<ServiceNowURL>/api/now/table/user_criteria?advanced=true&sysparm_limit=1

Se a instância utilizar critérios de utilizador baseados em scripts avançados, selecione Fluxo avançado quando implementar o conector. Para obter mais informações, veja Escolher fluxo com base nos critérios do utilizador.

O que são permissões hierárquicas?

ServiceNow o Knowledge suporta a definição de permissões ao nível base de dados de conhecimento (principal) e ao nível do artigo individual (subordinado). Estas permissões são avaliadas em conjunto para determinar se um utilizador tem acesso a um artigo. Este modelo é referido como permissões hierárquicas.

As permissões hierárquicas são suportadas para o conector de Conhecimento ServiceNow. Esta funcionalidade não está disponível em clouds soberanas ou governamentais ou florestas dedicadas em ambientes multi-inquilinos. Para obter mais informações, veja Configurar permissões hierárquicas.

Configurar pré-requisitos do conector

As secções seguintes descrevem os passos de pré-requisitos a concluir antes de implementar o conector ServiceNow.

Criar uma conta de serviço e configurar permissões para indexar itens

Para ligar a ServiceNow e permitir que o conector de Conhecimento do ServiceNow atualize itens regularmente, precisa de uma conta de serviço com acesso de leitura a registos de tabelas ServiceNow específicos. A tabela seguinte lista os registos de tabela necessários.

Recurso Tabelas necessárias de acesso de leitura Descrição
Indexar artigos de conhecimento disponíveis para Todos kb_knowledge Para pesquisar artigos de conhecimento
Indexar propriedades de tabela expandida sys_db_object Ler detalhes da tabela expandida para modelos
sys_dictionary Ler as propriedades da tabela expandida e os modelos de pesquisa
sys_properties Leia as propriedades de configuração do sistema para avaliar corretamente as permissões de artigos (necessárias para fluxos Simples e Avançados)
sys_attachment Para pesquisar anexos para artigos de conhecimento
kb_feedback Para pesquisar comentários em artigos de conhecimento
Indexar e suportar permissões de critérios de utilizador kb_uc_can_read_mtom Quem pode ler este base de dados de conhecimento
kb_uc_can_contribute_mtom Quem pode contribuir para este base de dados de conhecimento
kb_uc_cannot_read_mtom Quem não consegue ler este base de dados de conhecimento
kb_uc_cannot_contribute_mtom Quem não pode contribuir para este base de dados de conhecimento
sys_user Ler tabela de utilizador
sys_user_has_role Ler as informações de função dos utilizadores
sys_user_grmember** Ler a associação a grupos de utilizadores
user_criteria Ler permissões de critérios de utilizador
kb_knowledge_base Ler base de dados de conhecimento informações
sys_user_group Ler segmentos de grupos de utilizadores
sys_user_role Ler funções de utilizador
cmn_location** Ler informações de localização
cmn_department** Ler informações do departamento
core_company** Ler atributos da empresa

** O acesso a estas tabelas só é necessário quando escolhe o fluxo simples. Se escolher um fluxo avançado para ler os critérios de utilizador, não precisa de aceder a estas tabelas.

Pode criar e atribuir uma função para a conta de serviço que utiliza para se ligar ao Microsoft Search. Para obter mais informações, veja Atribuir uma função a um utilizador. Pode atribuir acesso de leitura às tabelas à função que criar.

Também pode atribuir as seguintes funções à conta de serviço para garantir que os artigos de conhecimento são indexados sem problemas de ACL de bloqueio. A atribuição destas funções é opcional.

  • knowledge_admin
  • user_criteria_admin
  • user_admin

Para obter informações sobre como criar um utilizador, atribuir uma função e conceder permissões de leitura em todos os registos de tabela aplicáveis, consulte Conceder acesso de tabela a um utilizador no ServiceNow.

Se a conta de serviço não tiver as permissões necessárias ( ou se as permissões ao nível da linha ou do campo forem restritas), os itens específicos serão excluídos da indexação do lado da Microsoft.

Observação

Não se aplique snc_read_only explicitamente à conta de serviço. Esta função nega qualquer ação de escrita a qualquer tabela à qual o utilizador tenha acesso. A conta tem de escrever tokens e outras informações relacionadas com a autenticação em algumas tabelas. Uma vez que os tokens são atualizados regularmente, esta conta não pode ser tornada só de leitura após a autenticação inicial. A conta de serviço precisa de acesso de escrita à oauth_credential tabela para autenticação.

Importante

A sys_properties tabela é necessária para fluxos Simples e Avançados. O conector lê glide.knowman.apply_article_read_criteria e glide.knowman.block_access_with_no_user_criteria a partir desta tabela. Se a conta de serviço não conseguir ler estas propriedades, o conector é predefinido automaticamente para as definições mais restritivas (true para ambos), o que bloqueia a apresentação de artigos sem critérios de utilizador explícitos nos resultados da pesquisa. Não é apresentado nenhum erro no centro de administração quando isto acontece.

Se a conta de serviço não tiver acesso à tabela Critérios de Utilizador completa, pode ocorrer um comportamento inconsistente relacionado com as permissões de utilizador, incluindo a partilha de conteúdos não intencionais.

Verificar as permissões da conta de serviço

Pode utilizar a Ferramenta de Verificador do Conector Copilot para confirmar que todas as permissões necessárias para ServiceNow Conhecimento estão configuradas corretamente:

  1. Abra a Ferramenta do Verificador do Conector Copilot.
  2. Escolha o tipo de autenticação no campo Tipo de Autenticação : Básico ou OAuth (recomendado).
  3. Preencha os campos e selecione Executar Teste.
  4. A ferramenta valida automaticamente a conectividade, verifica as credenciais, verifica as permissões ao nível da tabela, fornece um resumo dos resultados e recomenda os próximos passos conforme necessário.

Se tiver feedback sobre a ferramenta, selecione a ligação Feedback na parte inferior da página.

Identificar a contagem de itens para ingestão

O seguinte filtro predefinido é aplicado durante a indexação. Se precisar de fazer alterações, edite a cadeia de consulta durante a configuração do conector. Para obter mais informações, veja Personalizar cadeia de consulta.

active=true^workflow_state=published

Para verificar a contagem de itens esperada para a ingestão:

  1. Aceda ao seguinte URL: https://<instance-name>.service-now.com/api/now/table/kb_knowledge?sysparm_fields=sys_id&workflow_state=published. Este URL abre uma lista de sys_ids.

    Observação

    Se editar a cadeia de consulta predefinida para indexar os artigos selecionados, utilize o URL correspondente para refletir essas condições de consulta.

  2. Abra as Ferramentas de Programação na mesma janela e escreva o seguinte código na janela da consola:

        fetch('<<same URL as in 1>>')
        .then(res => res.json())
        .then(data => console.log("Count of sys_ids:", data.result.length))
        .catch(err => console.error(err));
    
  3. Repare na contagem de itens.

Quando o conector estiver configurado e a sincronização de itens estiver concluída, pode marcar a contagem de itens indexados em relação a esta contagem esperada para verificar se todos os artigos estão indexados. Para obter mais informações, veja Ver estatísticas de ligação.

Configurar a API REST

Para permitir que o conector obtenha critérios de utilizador avançados, crie uma API REST com script na sua instância de ServiceNow.

  • Eleve a sua função no ServiceNow para security_admin.

Criar controlo de acesso:

  1. Em ServiceNow, aceda a Todos os > Controle de Acesso de Segurança > do Sistema (ACL).
  2. Selecione Novo para criar uma nova ACL.
  3. Defina os seguintes valores:
    • Tipo: REST_Endpoint
    • Operação: Execute
    • Nome: Microsoft Copilot
    • Função: admin(ou a mesma função atribuída à conta de pesquisa)
  4. Choose Submit.

Crie a API REST com script:

  1. Aceda a Todas as > APIs REST com Scripts de Serviços Web dos Serviços >> Web do Sistema.
  2. Escolha Novo.
  3. Digite as informações a seguir:
    • Nome: Microsoft Copilot
    • ID da API: microsoft_copilot
  4. Choose Submit.
  5. Na página Lista de API REST com script, selecione Microsoft Copilot.
  6. Defina ACLs Predefinidas para Microsoft Copilot. Para evitar problemas com a autorização, adicione também a ACL Predefinida Externa REST Com Script .

Adicione um recurso à API:

  1. No separador Recursos , selecione Novo.

  2. Preencha os detalhes:

    • Nome: GetAllUserCriteria
    • Caminho Relativo: /user_criteria
    • Script: cole o seguinte código:
    (function execute (/*RESTAPIRequest*/ request, /*RESTAPIResponse*/ response) {
        var queryParams = request.queryParams;
        var user = new String(queryParams.user);
        return (new sn_uc.UserCriteriaLoader()).getAllUserCriteria(user);
    })(request, response);
    

Observação

A getAllUserCriteria() função foi preterida devido a potenciais problemas de desempenho. Para obter um script alternativo que possa utilizar, veja Problema ao ler todos os critérios de utilizador de ServiceNow.

  1. Certifique-se de que ambas as opções estão selecionadas:
    • Requer autenticação
    • Requer autorização da ACL
  2. Certifique-se de que as ACLs estão definidas como Microsoft Copilot. Para evitar problemas com a autorização, adicione também a ACL Predefinida Externa REST Com Script .
  3. Escolha Atualizar.

Para verificar a configuração:

  1. Confirme que o seguinte é o Caminho do Recurso: /api/<API Namespace>/microsoft_copilot/user_criteria.
  2. Selecione Atualizar para guardar a configuração.

O administrador do Microsoft 365 introduz o Espaço de Nomes da API quando implementar o conector de conhecimento ServiceNow. No exemplo seguinte, o espaço de nomes da API é abcdef.

/api/abcdef/microsoft_copilot/user_criteria

Configurar permissões hierárquicas

As permissões hierárquicas permitem que o conector de Conhecimento do ServiceNow avalie as permissões de utilizador para qualquer artigo de conhecimento ServiceNow. O conector avalia os critérios de utilizador aplicados ao nível do base de dados de conhecimento (principal) e do artigo de conhecimento (subordinado), de acordo com as regras que ServiceNow utiliza. Para obter mais informações sobre como ServiceNow avalia a permissão de artigos, consulte Gerir o acesso a bases de dados de conhecimento e artigos de conhecimento.

Para configurar permissões hierárquicas, forneça acesso de leitura à sys_properties tabela para a conta de serviço utilizada para a configuração do conector. O conector lê duas propriedades do sistema ( glide.knowman.apply_article_read_criteria e glide.knowman.block_access_with_no_user_criteria ) para determinar o fluxo de avaliação de permissões. Se a conta de serviço não conseguir ler estas propriedades, o conector é predefinido para as definições mais restritivas, o que pode fazer com que os artigos sem critérios de utilizador explícitos não apareçam nos resultados da pesquisa. Para obter mais informações, veja Conceder acesso à tabela a uma conta de serviço no ServiceNow.

Se o utilizador e a função já estiverem configurados, siga os passos nas secções Conceder acesso ao nível da linha e Conceder acesso ao nível do campo e adicionar a mesma função que atribuiu à conta de serviço a estas novas ACLs que criar para o acesso à sys_properties tabela.

  • Utilize * no nome do campo para aplicar acesso a todos os campos da tabela.

Internamente, precisa de acesso só de leitura ao campo de nome e valor para as seguintes propriedades, que são essenciais para avaliar a ACL hierárquica:

  • glide.knowman.apply_article_read_criteria
  • glide.knowman.block_access_with_no_user_criteria

Se não quiser conceder acesso a todos os campos na sys_properties tabela, para restringir a conta a ter acesso apenas aos campos necessários:

  1. Crie uma nova ACL e conceda acesso à tabela ao nível da sys_properties linha apenas para as propriedades específicas que pretende ler. Indique os seguintes valores:

    1. Tipo: registo
    2. Aplicação: Global
    3. Ativo: selecionado
    4. Tipo de Decisão: Permitir se
    5. Administração substituições: selecionadas
    6. Operação: leitura
    7. Nome: Propriedade do Sistema [sys_properties]. Mantenha a célula de campo adjacente como --None--.
    8. Aplica-se a:
      1. Selecione Nome, o operador é e indique o nome do campo: glide.knowman.apply_article_read_criteria.
      2. Selecione o operador OR .
      3. Na segunda linha, selecione Nome, operador é e indique o nome do campo: glide.knowman.block_access_with_no_user_criteria.
    9. Em Condições > Requer Funções, selecione a função para a qual pretende permitir esta ACL e crie a ACL.
  2. Crie outra ACL nova e conceda acesso ao campo Nome da propriedade . Indique os seguintes valores:

    1. Tipo: registo
    2. Aplicação: Global
    3. Ativo: selecionado
    4. Tipo de Decisão: Permitir se
    5. Administração substituições: selecionadas
    6. Operação: leitura
    7. Nome: Propriedade do Sistema [sys_properties]. No campo adjacente, selecione Nome.
    8. Aplica-se a:
      1. Selecione Nome, o operador é e indique o nome do campo: glide.knowman.apply_article_read_criteria.
      2. Selecione o operador OR .
      3. Na segunda linha, selecione Nome, operador é e indique o nome do campo: glide.knowman.block_access_with_no_user_criteria.
    9. Em Condições > Requer Funções, selecione a função para a qual pretende permitir esta ACL e crie a ACL.
  3. Crie outra ACL nova e conceda acesso ao campo Valor da propriedade . Indique os seguintes valores:

    1. Tipo: registo
    2. Aplicação: Global
    3. Ativo: selecionado
    4. Tipo de Decisão: Permitir se
    5. Administração substituições: selecionadas
    6. Operação: leitura
    7. Nome: Propriedade do Sistema [sys_properties]. No campo adjacente, selecione Valor.
    8. Aplica-se a:
      1. Selecione Nome, o operador é e indique o nome do campo: glide.knowman.apply_article_read_criteria.
      2. Selecione o operador OR .
      3. Na segunda linha, selecione Nome, operador é e indique o nome do campo: glide.knowman.block_access_with_no_user_criteria.
    9. Em Condições > Requer Funções, selecione a função para a qual pretende permitir esta ACL e crie a ACL.

As três ACLs que criou permitem-lhe restringir a conta de serviço apenas às permissões necessárias. Esta restrição permite-lhe obter os detalhes necessários para determinar o fluxo de avaliação de permissões na sua instância ServiceNow.

Adicionar o endereço IP do Microsoft 365 à lista de permissões

Se alguma configuração de rede, como definições de firewall ou proxy, bloquear o acesso ao ServiceNow, certifique-se de que adiciona os endereços IP listados nas regras da firewall de IP à lista de permissões.

Para obter informações sobre controlos específicos de ServiceNow, veja Endereço IP Controle de Acesso.

Resolver problemas de configuração do conector com a configuração do SSO ServiceNow

Se a instância ServiceNow estiver configurada com o início de sessão único (SSO), poderá encontrar os seguintes problemas durante a configuração do conector:

  • Durante o processo OAuth, poderá aparecer uma janela Terminar sessão com êxito sem pedir ServiceNow credenciais.
  • As credenciais de administrador do Microsoft 365 podem ser utilizadas para autorizar a ligação ServiceNow em vez da conta de serviço pretendida.

Por predefinição, ServiceNow tenta ligar-se com as credenciais de administrador do Microsoft 365 através do SSO a partir de um início de sessão no browser. Este comportamento pode fazer com que a ligação falhe e resulte na mensagem Terminar sessão com êxito .

Para resolve estes problemas:

  1. Abra uma janela privada do browser e inicie sessão com as credenciais da conta de serviço ServiceNow.

  2. Num novo separador, inicie sessão no Centro de administração do Microsoft 365 com as credenciais de administrador do Microsoft 365.

    Observação

    A predefinição do início de sessão inicial pode ServiceNow SSO. Se isso acontecer, mude para as credenciais corretas.

  3. Repita a configuração do OAuth. Deverá ver agora uma janela a pedir-lhe para autorizar a ligação com as credenciais da conta de serviço.

Próxima etapa