Configurar o ServiceNow para ingestão do Databricks
Saiba como configurar sua instância do ServiceNow para a ingestão do Databricks.
Escolha um método de autenticação
Os seguintes métodos de autenticação são suportados:
- U2M OAuth (recomendado)
- Credenciais de senha do proprietário do recurso OAuth (ROPC – legado)
A Databricks recomenda o U2M OAuth por ser a abordagem mais segura. No entanto, sua conexão com o ServiceNow expirará quando seus tokens de autenticação expirarem. Por default, isso acontece a cada 100 dias. Para reduzir a frequência, você pode modificar o período de expiração no ServiceNow ou usar o ROPC.
Você usará os detalhes de autenticação obtidos para criar uma conexão do Databricks Unity Catalog com o ServiceNow.
Conceder permissões de usuário
As seguintes opções para conceder permissões de usuário do ServiceNow são suportadas:
Escopo OAuth | Descrição |
|---|---|
Acesso de administrador (recomendado) | Requer as funções |
Acesso com privilégios mínimos | Utiliza ACLs em nível de tabela. |
Acesso de administrador (recomendado)
A Databricks recomenda essa abordagem porque ela proporciona uma descoberta de esquema eficiente. Você precisa ter as seguintes permissões:
- Para capturar exclusões, o usuário do ServiceNow deve ter acesso ao site
sys_audit_delete table, e a tabela que está sendo ingerida deve acompanhar as exclusões (o atributo da tabela não pode ser definido comono_audit_delete=trueno ServiceNow). - Seu usuário do ServiceNow deve ter a função
admin. - (Opcional) Para limitar o acesso somente de leitura ao usuário administrador, você pode atribuir a ele a função
snc_read_only.
Acesso com privilégios mínimos
Escolha esta abordagem somente se restringir permissões for mais importante do que minimizar o uso da API. Essa abordagem requer as seguintes permissões de ACL:
sys_dictionarysys_dictionary.*sys_db_objectsys_db_object.*sys_audit_deletesys_audit_delete.*sys_glide_objectsys_glide_object.*
Criar um aplicativo OAuth
Esta etapa reúne os detalhes de autenticação do ServiceNow para a ingestão do Databricks.
-
No menu All (Todos ), pesquise System OAuth e clique em Application Registry (Registro de aplicativos ).

-
Clique em New > Create OAuth API endpoint for external clients .

-
Insira um nome para o aplicativo.
-
Em Auth Scope , digite
useraccount. -
(Somente U2M OAuth) Para URL de redirecionamento , insira
https://<databricks-workspace-url>/login/oauth/servicenow.html. Substitua<databricks-workspace-url>pelo URL completo do seu workspace Databricks (por exemplo,https://cust-success.cloud.databricks.com).
Ignore esta etapa se estiver usando ROPC.
-
Clique em Enviar .

-
Copie o ID do cliente e o segredo do cliente .
Obtenha o ID da instância
O ID da instância é a primeira parte do URL de login do ServiceNow account:
https://<instanceid>.service-now.com
Por exemplo, se a página inicial da sua instância ServiceNow for https://abc.service-now.com, o ID da instância será abc.
(Legado) Obtenha um nome de usuário e senha
Este passo só é necessário para o fluxo ROPC legado. A Databricks recomenda o uso do U2M OAuth.
Obtenha o nome de usuário e a senha de um usuário ativo do ServiceNow.
Ativar indexação na coluna do cursor
Para melhorar o desempenho da ingestão de dados, a Databricks recomenda que você trabalhe com o administrador do ServiceNow para habilitar a indexação no campo do cursor no ServiceNow. A coluna do cursor é selecionada da seguinte lista, por ordem de disponibilidade e preferência: sys_updated_on (primeira escolha), sys_created_on (segunda escolha), sys_archived (terceira escolha). Essa é uma abordagem padrão para melhorar o desempenho ao ingerir dados usando as APIs do ServiceNow. A configuração do índice permite que o Databricks evite a varredura completa de toda a coluna do cursor, o que pode causar gargalos em atualizações grandes. Para obter instruções, consulte Criar um índice de tabela na documentação do ServiceNow.