Esta página descreve como associar o ServiceNow ao Gemini Enterprise.
Depois de configurar a origem de dados e importar dados pela primeira vez, o armazenamento de dados sincroniza os dados dessa origem com uma frequência que seleciona durante a configuração.
Antes de começar
Antes de configurar a ligação, certifique-se de que tem o seguinte:
- Instância do ServiceNow: crie uma instância do ServiceNow seguindo as instruções na documentação do ServiceNow Developer.
Google Cloud projeto: configure um Google Cloud projeto com uma conta de administrador capaz de gerir configurações ao nível da organização, garantindo que a organização pode configurar um conjunto de trabalhadores.
Conjunto de trabalhadores: certifique-se de que a sua organização está configurada para gerir um conjunto de trabalhadores.
Configure o ServiceNow
O ServiceNow oferece dois sites principais:
Site principal do ServiceNow: o site da sua instância do ServiceNow.
- Faz a gestão de utilizadores, grupos e tarefas de administração do sistema.
- URL: o URL da sua instância do ServiceNow.
- Inicie sessão com as suas credenciais de administrador.
-
- Configura a base de conhecimentos, configura fluxos de trabalho e desenvolve aplicações personalizadas.
- URL:
https://developer.service-now.com
. - Inicie sessão com o seu ID do ServiceNow.
Para criar um ponto final OAuth:
- Inicie sessão na instância principal do ServiceNow com uma função de administrador.
Navegue para Tudo > OAuth do sistema > Registo de aplicações.
Selecione o registo de aplicações Clique em Novo.
Clique no botão Novo Clique em Criar um ponto final da API OAuth para clientes externos.
Selecione a opção para criar um ponto final da API OAuth para clientes externos Preencha os campos obrigatórios:
- Nome: introduza um nome exclusivo.
- URL de redirecionamento: introduza o URL de redirecionamento:
https://vertexaisearch.cloud.google.com/console/oauth/servicenow_oauth.html
Clique em Enviar para criar a credencial.
Introduza o URL de redirecionamento Após o envio, clique no nome para ver o ID de cliente.
Veja o ID de cliente O segredo está oculto. Clique no ícone de cadeado junto ao mesmo para desmascarar e ver o segredo do cliente.
Clique no ícone de cadeado Guarde o ID de cliente e o segredo do cliente para utilização posterior.
Copie o ID de cliente e o segredo do cliente
Para obter as credenciais da instância do ServiceNow:
Aceda a developer.service-now.com e clique em Gerir palavra-passe da instância.
Clique no botão Gerir palavra-passe da instância Guarde uma cópia do URL, do nome de utilizador e da palavra-passe da instância para usar quando necessário.
Nesta fase, estão disponíveis todas as cinco informações necessárias para configurar um repositório de dados do ServiceNow. Se não existirem preocupações relativamente à utilização da função de administrador para extrair dados, avance para a criação de um arquivo de dados.
Configure funções e autorizações de administrador
Eleve a função de administrador para security_admin
para gerir utilizadores e funções.
Clique no ícone do seu perfil e, de seguida, selecione Elevar função.
Clique no botão Elevar função Selecione
security_admin
e, de seguida, clique em Atualizar. A funçãosecurity_admin
ajuda a criar funções e gerir utilizadores.Selecione a função security_admin
e, de seguida, clique no botão Atualizar
Configure funções e autorizações de utilizadores
Para criar um repositório de dados do ServiceNow no Gemini Enterprise, tem de conceder as funções e as autorizações adequadas aos utilizadores. Antes de começar, é fundamental compreender como o conector processa o acesso à entidade incidente. Consulte a secção Visibilidade de incidentes e controlo de acesso.
Escolha uma das seguintes opções para atribuir aos utilizadores as funções e as autorizações de que precisam para configurar um arquivo de dados no Google Cloud. Cada opção fornece o acesso necessário à sua instância.
Crie uma função personalizada com regras de ACL (recomendado)
Use uma função personalizada com administradores de entidades
Visibilidade de incidentes e controlo de acesso
Para melhorar a segurança e evitar a exposição não intencional de dados, o conetor do ServiceNow usa um controlo de acesso restritivo para a entidade incidente. Isto garante que os utilizadores finais só podem ver incidentes aos quais estão diretamente associados.
Como parte desta abordagem restritiva, o conector não respeita as autorizações amplas baseadas em funções para a visibilidade de incidentes. As funções padrão do ServiceNow, como itil
e sn_incident_read
, que podem conceder a um utilizador visibilidade sobre todos os incidentes na IU do ServiceNow, não concedem o mesmo nível de acesso no Gemini Enterprise.
Os utilizadores com qualquer uma das seguintes funções têm visibilidade global dos incidentes e podem ver todos os incidentes:
admin
incident_manager
change_manager
Todos os outros utilizadores só podem ver um incidente se o tiverem aberto, reaberto, resolvido ou fechado. Também podem ver um incidente se:
- No grupo de atribuição do incidente.
- Uma pessoa que ligou associada ao incidente.
- Um destinatário.
- Numa lista de visualização.
- Numa lista de notas profissionais.
- Numa lista de responsáveis adicional.
Este comportamento impede que um utilizador do Gemini Enterprise encontre um incidente ao qual não tem acesso. Devido às restrições adicionais em comparação com as autorizações mais amplas do ServiceNow, este comportamento pode, ocasionalmente, impedir que um utilizador encontre um incidente no Gemini Enterprise ao qual tem acesso no ServiceNow.
Crie uma função personalizada com regras de LCA (recomendado)
Crie uma função personalizada com o conjunto mínimo de autorizações.
Aceda a Tudo > Administração de utilizadores > Funções.
Selecionar funções Clique em Novo.
Clique no botão Novo Indique um nome e clique em Enviar.
Selecione um nome e envie Aceda a Segurança do sistema > Controlo de acesso (ACL).
Selecione Controlo de acesso (LCA) Clique em Novo para criar uma nova regra de LCA.
Clique no botão Novo Repita os dois passos seguintes até conceder acesso a todas as tabelas necessárias.
Use
sys_user_role
como exemplo para ver como é concedido o acesso à tabela.Selecione sys_user_role
Clique em Enviar e selecione a função.
Tabelas obrigatórias
O conetor precisa de acesso a estas tabelas para que cada entidade seja executada.
Nome da tabela | Descrição |
---|---|
incidente |
Mostrar incidentes nos resultados da pesquisa. |
sc_cat_item |
Mostrar artigos do catálogo nos resultados da pesquisa. |
sc_cat_item_user_criteria_mtom |
Mostrar utilizadores que podem aceder a itens do catálogo com base em critérios do utilizador. |
sc_cat_item_user_criteria_no_mtom |
Mostrar utilizadores que não podem aceder a itens do catálogo com base nos critérios do utilizador. |
sc_cat_item_user_mtom |
Mostrar que utilizadores podem aceder aos itens do catálogo. |
sc_cat_item_user_no_mtom |
Mostrar utilizadores que não conseguem aceder a itens do catálogo. |
kb_knowledge |
A lista de artigos de conhecimentos que podem ser apresentados nos resultados da pesquisa. |
kb_knowledge_base |
A lista de bases de conhecimentos que podem ser apresentadas nos resultados da pesquisa. |
kb_uc_can_contribute_mtom |
Mostrar quem pode contribuir para as bases de conhecimentos com base nos critérios do utilizador. |
kb_uc_can_read_mtom |
Mostrar quem pode ler as bases de conhecimentos com base nos critérios do utilizador. |
kb_uc_cannot_read_mtom |
Mostrar quem não pode ler as bases de conhecimentos com base nos critérios do utilizador. |
sys_user_role |
Lista de funções que podem ser atribuídas aos utilizadores. |
sys_user_has_role |
Lista de funções mapeadas para os utilizadores. |
sys_user_group |
Lista de segmentos de grupos de utilizadores. |
sys_user_grmember |
Lista de membros do grupo para grupos. |
sys_user |
Lista de todos os utilizadores. |
core_company |
Lista de todos os atributos da empresa. |
cmn_location |
Lista de todos os atributos de localização. |
cmn_department |
Lista de todos os atributos do departamento. |
user_criteria |
Lista de registos de critérios do utilizador. |
sp_portal |
URI do portal de links nos resultados da pesquisa. |
m2m_sp_portal_knowledge_base |
URI do portal de links para artigos de conhecimentos nos resultados da pesquisa. |
m2m_sp_portal_catalog |
URI do portal de links para itens do catálogo nos resultados da pesquisa. |
Conceda e valide o acesso à LCA
O conetor requer acesso ACL aos campos do item do catálogo da tabela sc_cat_item
.
Para conceder e validar o acesso, faça o seguinte:
Conceda acesso explícito criando uma nova regra de ACL e introduzindo manualmente
sc_cat_item.*
no campo Nome do formulário.Introduza sc_cat_item.*
Verifique se as ACLs estão atualizadas.
Aceda a
sys_security_acl_role_list.do
na barra de pesquisa.Introduza sys_security_acl_role_list.do
Defina Role para a função que quer validar.
Selecione a função a validar Verifique se as ACLs necessárias estão atribuídas à função.
Use uma função personalizada com administradores de entidades
A utilização da função de administrador pode não ser adequada para equipas ou organizações que pretendam evitar a atribuição de autorizações excessivamente poderosas. Esta opção oferece uma função com três autorizações específicas que concedem o acesso necessário.
Aceda a Tudo > Segurança do sistema > Utilizadores e grupos > Funções.
Adicione funções Selecione Novo e introduza um nome.
Clique no botão Novo Clique em Enviar.
Clique no botão Enviar Encontre a função criada na lista.
Pesquise através do nome da função e clique na função Navegue para Contém funções > Editar.
Clique no botão Editar Adicione as seguintes funções à função recém-criada e, de seguida, clique em Guardar.
catalog_admin
knowledge_admin
incident_manager
Adicione funções e clique no botão Guardar Confirme as atualizações.
Confirme as funções A figura seguinte mostra a função personalizada que inclui três funções:
Funções personalizadas
Use uma função de administrador
Pode usar uma função de administrador para extrair dados. Use a função de administrador predefinida configurada com a instância ou crie um novo utilizador com uma função de administrador fazendo o seguinte:
Aceda a Tudo > Administração de utilizadores > Utilizadores.
Selecione utilizadores Crie um novo utilizador com um nome.
Selecione o nome de utilizador Ative a opção Apenas acesso ao serviço Web. Quando seleciona a opção Acesso apenas ao serviço Web, cria um utilizador não interativo.
Utilizadores interativos vs. utilizadores não interativos: os utilizadores interativos podem iniciar sessão na IU ou no portal de serviços do ServiceNow com o respetivo nome de utilizador e palavra-passe. Podem aceder a uma instância através de um URL que aponta para uma página, um formulário ou uma lista da IU. Também podem estabelecer ligação através de métodos de início de sessão único, como a autenticação por resumo ou a linguagem de marcação de declaração de segurança (SAML). Além disso, podem usar as respetivas credenciais para autorizar ligações SOAP, se permitido por definições de segurança rigorosas, e têm acesso ilimitado a outras ligações API, como WSDL, JSON, XML ou XSD.
Por outro lado, os utilizadores não interativos só podem usar as respetivas credenciais para autorizar ligações de API, como JSON, SOAP e WSDL. Não podem iniciar sessão na IU do ServiceNow e só podem aceder à instância através de protocolos de API.
Após a criação do utilizador, selecione-o na lista de utilizadores.
Escolha um utilizador Clique em Funções > Editar.
Edite funções Adicione Administrador.
Clique em Guardar para adicionar uma lista de funções ao utilizador.
Adicione a lista de funções ao utilizador Clique em Definir palavra-passe, gere-a automaticamente e guarde-a.
Definir palavra-passe
Conceda uma função a um utilizador
Aceda a Tudo > Administração de utilizadores > Utilizadores.
Selecione utilizadores Encontre ou crie um novo utilizador.
Encontre ou crie um novo utilizador Se não estiver disponível nenhum utilizador, aceda a Segurança do sistema > Utilizadores e grupos > Utilizadores.
Selecione utilizadores Clique em Novo.
Clique no botão Novo Crie uma nova conta de serviço na tabela de utilizadores. Certifique-se de que clica em Acesso apenas ao serviço Web.
Clique na opção Apenas acesso ao serviço Web Desloque a página até Funções.
Navegue para Funções Clique em Edit.
Editar funções Conceda a função que criou e atribua-a ao utilizador. Com base no tipo de função que criou no passo anterior, selecione a adequada e atribua-a ao utilizador. Clique em Guardar.
Selecione e atribua a função OU
Atribua a função e guarde Veja a função personalizada com a ACL.
Função personalizada com ACL Obtenha o nome de utilizador e a palavra-passe do utilizador e clique em Definir palavra-passe.
Definir palavra-passe Gerar automaticamente uma palavra-passe e guardá-la para utilização posterior.
Gere automaticamente uma palavra-passe
Crie um conetor do ServiceNow
Consola
Para usar a Google Cloud consola para sincronizar dados do ServiceNow com o Gemini Enterprise, siga estes passos:
Na Google Cloud consola, aceda à página Gemini Enterprise.
No menu de navegação, clique em Armazenamentos de dados.
Clique em
Criar arquivo de dados.Na página Selecione uma origem de dados, desloque a página ou pesquise ServiceNow para associar a sua origem de terceiros.
Introduza as suas informações de autenticação do ServiceNow.
- URI da instância
- ID de cliente
- Segredo do cliente
- Conta de utilizador
- Palavra-passe
Informações de autenticação do ServiceNow Preencha um nome exclusivo para o seu repositório de dados e clique em Criar.
Selecione as entidades a sincronizar:
Artigo de conhecimentos
Catálogo de serviços
Incidente
Anexo
Para filtrar entidades do índice ou garantir que são incluídas no índice, clique em Filtrar.
Especifique filtros para incluir ou excluir entidades Clique em Guardar.
Clique em Continuar.
Selecione a Frequência de sincronização para a Sincronização completa e a Frequência de sincronização incremental para a Sincronização de dados incremental. Para mais informações, consulte o artigo Sincronize programações.
Se quiser agendar sincronizações completas separadas de dados de entidades e identidades, expanda o menu em Sincronização completa e, de seguida, selecione Opções personalizadas.
Definir agendas separadas para a sincronização completa de entidades e a sincronização completa de identidades. Selecione uma região para o conetor de dados.
Clique em Criar. O Gemini Enterprise cria o seu repositório de dados e apresenta os seus repositórios de dados na página Repositórios de dados.
Para verificar o estado do carregamento, aceda à página Armazenamentos de dados e clique no nome do conector de dados para ver os respetivos detalhes na página Dados. O Estado do conetor muda de A criar para Em execução quando começa a sincronizar dados. Quando o carregamento estiver concluído, o estado muda para Ativo para indicar que a ligação à sua origem de dados está configurada e a aguardar a próxima sincronização agendada.
Consoante o tamanho dos seus dados, a carregamento pode demorar vários minutos ou várias horas.
Ative a sincronização em tempo real
A sincronização em tempo real só sincroniza entidades de documentos e não sincroniza dados relacionados com entidades de identidade. A tabela seguinte mostra os eventos de documentos que são suportados com a sincronização em tempo real.
Entidades do ServiceNow | Criar | Atualizar | Eliminar | Alterações de permissões |
---|---|---|---|---|
Anexos | ||||
Catálogos | ||||
Incidentes | ||||
Conhecimento |
Para ativar a sincronização em tempo real para o conector, siga estes passos.
Na Google Cloud consola, aceda à página Gemini Enterprise.
No menu de navegação, clique em Armazenamentos de dados.
Clique no nome do conetor do ServiceNow para o qual quer ativar a sincronização em tempo real.
Na página Dados do conetor, aguarde até que o Estado do conetor mude para Ativo.
No campo Sincronização em tempo real, clique em Ver/editar.
Veja e edite as definições de sincronização em tempo real. Clique no botão Ativar sincronização em tempo real para o ativar.
Indique um valor para o segredo do cliente. Este valor é usado para validar eventos do webhook do ServiceNow. Recomendamos a utilização de uma string de 20 carateres.
Ative a sincronização em tempo real e forneça um segredo do cliente. Clique em Guardar.
Aguarde até que o campo Sincronização em tempo real mude para Em execução.
Aceda à sua instância do ServiceNow através de uma conta com uma função de administrador.
Clique em Tudo.
No campo Filtro, introduza
sys_properties.list
e envie.Localize as propriedades do sistema no ServiceNow. Clique em Nova para criar uma propriedade do sistema.
Crie uma nova propriedade do sistema no ServiceNow. Preencha os campos da nova propriedade do sistema.
Em Nome, introduza um nome descritivo, como
webhook_secret
.Para Valor, introduza o valor que usou para o campo Segredo do cliente nas definições de sincronização em tempo real do conetor do Gemini Enterprise.
Clique em Enviar.
Preencha os campos da nova propriedade do sistema ServiceNow.
Crie um webhook para entidades de conhecimento
Para criar um webhook para entidades de conhecimentos do ServiceNow, siga estes passos.
Aceda à sua instância do ServiceNow através de uma conta com uma função de administrador e clique em Tudo > Definição do sistema > Regras empresariais.
Veja as regras empresariais do ServiceNow. Clique em Nova para criar uma nova regra empresarial.
Crie uma nova regra empresarial do ServiceNow. Preencha os campos do webhook.
Em Nome, introduza um nome descritivo, como
Knowledge webhook
.Selecione Advanced (Avançadas).
Para Tabela, selecione Conhecimento [kb_knowledge].
Preencha os campos do webhook da entidade de conhecimento. Clique em Quando executar.
Em Quando, selecione antes.
Selecione Inserir, Atualizar e Eliminar.
Especifique quando o webhook da entidade de conhecimento deve ser executado. Clique em Avançadas.
Cole o código seguinte no campo Script, substituindo o valor do ponto final pelo URL de notificação do webhook fornecido quando ativou a sincronização em tempo real para o conector do Gemini Enterprise:
(function executeRule(current, previous /*null when async*/) { var request = new sn_ws.RESTMessageV2(); request.setEndpoint('WEBHOOK_NOTIFICATION_URL'); request.setHttpMethod('POST'); var token = gs.getProperty('webhook_secret'); var requestBody = "{\"sys_id\":\"" + current.sys_id + "\",\"entity\":\"" + "knowledge" + "\",\"operation\":\"" + current.operation() + "\"}"; request.setRequestHeader("Accept","application/json"); request.setRequestHeader('Content-Type','application/json'); request.setRequestBody(requestBody); var signature = SncAuthentication.encode(requestBody, token, "HmacSHA256"); request.setRequestHeader("X-Hub-Signature", 'sha256=' + signature); var response = request.execute(); gs.log(response.getBody()); })(current, previous);
Introduza o script fornecido. Clique em Enviar.
Envie a nova regra empresarial.
Crie um webhook para entidades do catálogo
Para criar um webhook para entidades do catálogo do ServiceNow, siga os passos em Crie um webhook para entidades de conhecimento, com as seguintes diferenças:
Quando criar uma nova regra empresarial, para Tabela, selecione Artigo do catálogo [sc_cat_item].
No separador Avançado, para Script, cole o seguinte código, substituindo o valor do ponto final pelo URL de notificação do webhook fornecido quando ativou a sincronização em tempo real para o conector do Gemini Enterprise:
(function executeRule(current, previous /*null when async*/) { var request = new sn_ws.RESTMessageV2(); request.setEndpoint('WEBHOOK_NOTIFICATION_URL'); request.setHttpMethod('POST'); var token = gs.getProperty('webhook_secret'); var requestBody = "{\"sys_id\":\"" + current.sys_id + "\",\"entity\":\"" + "catalog" + "\",\"operation\":\"" + current.operation() + "\"}"; request.setRequestHeader("Accept","application/json"); request.setRequestHeader('Content-Type','application/json'); request.setRequestBody(requestBody); var signature = SncAuthentication.encode(requestBody, token, "HmacSHA256"); request.setRequestHeader("X-Hub-Signature", 'sha256=' + signature); var response = request.execute(); gs.log(response.getBody()); })(current, previous);
Crie um webhook para entidades de incidentes
Para criar um webhook para entidades de incidentes do ServiceNow, siga os passos em Crie um webhook para entidades de conhecimentos, com as seguintes diferenças:
Quando criar uma nova regra empresarial, em Tabela, selecione Incidente [incidente].
No separador Avançado, para Script, cole o seguinte código, substituindo o valor do ponto final pelo URL de notificação do webhook fornecido quando ativou a sincronização em tempo real para o conector do Gemini Enterprise:
(function executeRule(current, previous /*null when async*/) { var request = new sn_ws.RESTMessageV2(); request.setEndpoint('WEBHOOK_NOTIFICATION_URL'); request.setHttpMethod('POST'); var token = gs.getProperty('webhook_secret'); var requestBody = "{\"sys_id\":\"" + current.sys_id + "\",\"entity\":\"" + "incident" + "\",\"operation\":\"" + current.operation() + "\"}"; request.setRequestHeader("Accept","application/json"); request.setRequestHeader('Content-Type','application/json'); request.setRequestBody(requestBody); var signature = SncAuthentication.encode(requestBody, token, "HmacSHA256"); request.setRequestHeader("X-Hub-Signature", 'sha256=' + signature); var response = request.execute(); gs.log(response.getBody()); })(current, previous);
Crie um webhook para entidades de anexos
Para criar um webhook para entidades de anexos do ServiceNow, siga os passos em Crie um webhook para entidades de conhecimentos, com as seguintes diferenças:
Quando criar uma nova regra empresarial, para Tabela, selecione Anexo [sys_attachment].
No separador Avançado, para Script, cole o seguinte código, substituindo o valor do ponto final pelo URL de notificação do webhook fornecido quando ativou a sincronização em tempo real para o conector do Gemini Enterprise:
(function executeRule(current, previous /*null when async*/) { var request = new sn_ws.RESTMessageV2(); request.setEndpoint('WEBHOOK_NOTIFICATION_URL'); request.setHttpMethod('POST'); var token = gs.getProperty('webhook_secret'); var requestBody = "{\"sys_id\":\"" + current.sys_id + "\",\"entity\":\"" + "attachment" + "\",\"operation\":\"" + current.operation() + "\"}"; request.setRequestHeader("Accept","application/json"); request.setRequestHeader('Content-Type','application/json'); request.setRequestBody(requestBody); var signature = SncAuthentication.encode(requestBody, token, "HmacSHA256"); request.setRequestHeader("X-Hub-Signature", 'sha256=' + signature); var response = request.execute(); gs.log(response.getBody()); })(current, previous);
Configure o conjunto de trabalhadores
O conjunto de colaboradores permite-lhe gerir e autenticar utilizadores de fornecedores de identidade externos, como o Azure ou o Okta, na Google Cloud consola. Para configurar o seu conjunto de trabalhadores e ativar a app Web para um acesso perfeito dos utilizadores, faça o seguinte:
Crie um workforce pool ao nível da organização Google Cloud seguindo o manual de configuração adequado:
Configure o conjunto de colaboradores no Gemini Enterprise > Definições para a região onde cria a sua app.
Passos seguintes
Para anexar o seu arquivo de dados a uma app, crie uma app e selecione o seu arquivo de dados seguindo os passos em Criar uma app.
Para pré-visualizar a apresentação dos resultados da pesquisa após a configuração da app e do arquivo de dados, consulte o artigo Pré-visualizar resultados da pesquisa.
Para ativar alertas para o arquivo de dados, consulte o artigo Configure alertas para arquivos de dados de terceiros.