Compartilhar via


Conector Microsoft Graph do Oracle SQL

O conector Oracle SQL Graph permite que a sua organização detete e indexe dados a partir de uma base de dados Oracle no local. Os índices de conectores especificaram conteúdo no Microsoft Search. Para manter o índice atualizado com os dados de origem, suporta pesquisas periódicas completas e incrementais. Com o conector SQL oracle, também pode restringir o acesso aos resultados da pesquisa para determinados utilizadores.

Observação

Leia o artigo Configurar conectores do Microsoft Graph no centro de administração do Microsoft 365 para compreender as instruções gerais de configuração dos conectores do Microsoft Graph.

Este artigo destina-se a qualquer pessoa que configure, execute e monitorize um conector do Oracle SQL Graph. Complementa o processo de configuração geral e mostra instruções que se aplicam apenas ao conector oracle SQL Graph. Este artigo também inclui informações sobre Resolução de Problemas e Limitações.

Antes de começar

Instalar o agente do conector

Para aceder aos seus dados de terceiros no local, tem de instalar e configurar o agente do conector do Graph. Veja Instalar o agente do conector do Graph para saber mais.

Passo 1: adicionar um conector no centro de administração do Microsoft 365

Adicionar conector SQL Oracle

Siga as instruções de configuração gerais.

Passo 2: atribuir um nome à ligação

Siga as instruções de configuração gerais.

Passo 3: Configurar as definições de ligação

Para ligar o conector SQL Oracle a uma origem de dados, tem de configurar o servidor de bases de dados que pretende pesquisar e o agente do conector do Graph no local. Em seguida, pode ligar à base de dados com o método de autenticação necessário.

Para o conector SQL Oracle, tem de especificar o nome hostname, Port and Service (base de dados), juntamente com o método de autenticação preferencial, o nome de utilizador e a palavra-passe.

Se o Nome do Serviço não estiver disponível e se ligar através do SID, o Nome do Serviço pode ser derivado através de um dos seguintes comandos (a executar como administrador do sys) -

  • selecione SERVICE_NAME de gv$session em que sid in (selecione sid from v$MYSTAT);
  • selecione sys_context('userenv','service_name') a partir de duplo;

Observação

A sua base de dados tem de executar a versão 11g ou posterior da base de dados Oracle para que o conector consiga estabelecer ligação. O conector suporta a base de dados Oracle alojada em plataformas de VMs do Windows, Linux e Azure.

Para procurar o conteúdo da base de dados, tem de especificar consultas SQL quando configurar o conector. Estas consultas SQL têm de atribuir um nome a todas as colunas da base de dados que pretende indexar (ou seja, propriedades de origem), incluindo todas as associações SQL que precisam de ser executadas para obter todas as colunas. Para restringir o acesso aos resultados da pesquisa, tem de especificar Listas de Controlo de Acesso (ACLs) em consultas SQL quando configurar o conector.

Passo 3a: Pesquisa completa (Necessário)

Neste passo, vai configurar a consulta SQL que executa uma pesquisa completa da base de dados. A pesquisa completa seleciona todas as colunas ou propriedades onde pretende selecionar as opções Consulta, Pesquisa ou Obter. Também pode especificar colunas ACL para restringir o acesso dos resultados da pesquisa a utilizadores ou grupos específicos.

Dica

Para obter todas as colunas de que precisa, pode associar várias tabelas.

Script a mostrar a TabelaDaEncauda e a TabelaCl com propriedades de exemplo.

Selecionar colunas de dados (Obrigatório) e colunas ACL (Opcional)

O exemplo demonstra a seleção de cinco colunas de dados que contêm os dados da pesquisa: OrderId, OrderTitle, OrderDesc, CreatedDateTime e IsDeleted. Para definir permissões de visualização para cada linha de dados, opcionalmente, pode selecionar estas colunas da ACL: AllowedUsers, AllowedGroups, DeniedUsers e DeniedGroups. Para todas estas colunas de dados, pode selecionar as opções para Consulta, Pesquisa ou Obter.

Selecione as colunas de dados, conforme mostrado nesta consulta de exemplo: SELECT OrderId, OrderTitle, OrderDesc, AllowedUsers, AllowedGroups, DeniedUsers, DeniedGroups, CreatedDateTime, IsDeleted

Para gerir o acesso aos resultados da pesquisa, pode especificar uma ou mais colunas da ACL na consulta. O conector SQL permite-lhe controlar o acesso ao nível por registo. Pode optar por ter o mesmo controlo de acesso para todos os registos numa tabela. Se as informações da ACL estiverem armazenadas numa tabela separada, poderá ter de fazer uma associação com essas tabelas na consulta.

A utilização de cada uma das colunas da ACL na consulta acima é descrita abaixo. A lista seguinte explica os quatro mecanismos de controlo de acesso.

  • AllowedUsers: esta opção especifica a lista de IDs de utilizador que poderão aceder aos resultados da pesquisa. No exemplo seguinte, a lista de utilizadores: john@contoso.com, keith@contoso.come lisa@contoso.com só teria acesso a um registo com OrderId = 12.
  • AllowedGroups: esta opção especifica o grupo de utilizadores que poderão aceder aos resultados da pesquisa. No exemplo seguinte, o grupo sales-team@contoso.com só teria acesso ao registo com OrderId = 12.
  • DeniedUsers: esta opção especifica a lista de utilizadores que não têm acesso aos resultados da pesquisa. No exemplo seguinte, os utilizadores john@contoso.com e keith@contoso.com não têm acesso ao registo com OrderId = 13, enquanto todos os outros têm acesso a este registo.
  • DeniedGroups: esta opção especifica o grupo de utilizadores que não têm acesso aos resultados da pesquisa. No exemplo seguinte, agrupa engg-team@contoso.com e pm-team@contoso.com não tem acesso ao registo com OrderId = 15, enquanto todos os outros têm acesso a este registo.

Dados de exemplo que mostram a TabelaDaEnerenda e AclTable com propriedades de exemplo.

Tipos de dados suportados

A tabela abaixo resume os tipos de dados suportados pelo conector SQL oracle. A tabela também resume o tipo de dados de indexação para o tipo de dados SQL suportado. Para saber mais sobre os conectores do Microsoft Graph que suportam tipos de dados para indexação, veja a documentação sobre tipos de recursos de propriedade.

Categoria Tipo de dados de origem Tipo de dados de indexação
Tipo de dados numérico NÚMERO(p;0) int64 (para p <= 18)
duplo (para p > 18)
Tipo de dados de número de vírgula flutuante NÚM(p;s)
FLOAT(p)
double
Tipo de dados de data DATA
CARIMBO DE DATA/HORA
CARIMBO DE DATA/HORA(n)
datetime
Tipo de dados de carateres CHAR(n)
VARCHAR
VARCHAR2
LONGO
CLOB
NCLOB
string
Tipo de dados de carateres Unicode NCHAR
NVARCHAR
string
Tipo de dados RowID ROWID
UROWID
string

Para qualquer outro tipo de dados atualmente não suportado diretamente, a coluna tem de ser explicitamente convertida num tipo de dados suportado.

Marca d'água (Obrigatório)

Para evitar sobrecarregar a base de dados, o conector cria lotes e retoma as consultas de pesquisa completa com uma coluna de marca d'água de pesquisa completa. Ao utilizar o valor da coluna de marca d'água, cada lote subsequente é obtido e a consulta é retomada a partir do último ponto de verificação. Essencialmente, este é um mecanismo para controlar a atualização de dados para pesquisas completas.

Crie fragmentos de consulta para marcas d'água, conforme mostrado nestes exemplos:

  • WHERE (CreatedDateTime > @watermark). Cite o nome da coluna de marca d'água com a palavra-chave @watermarkreservada . Só pode ordenar a coluna de marca d'água por ordem ascendente.
  • ORDER BY CreatedDateTime ASC. Ordene na coluna de marca d'água por ordem ascendente.

Na configuração apresentada na imagem seguinte, CreatedDateTime encontra-se a coluna de marca d'água selecionada. Para obter o primeiro lote de linhas, especifique o tipo de dados da coluna de marca d'água. Neste caso, o tipo de dados é DateTime.

Configuração da coluna de marca d'água.

A primeira consulta obtém o primeiro N número de linhas com: "CreatedDateTime > 1 de janeiro de 1753 00:00:00" (valor mínimo do tipo de dados DateTime). Depois de o primeiro lote ser obtido, o valor mais alto devolvido CreatedDateTime no lote é guardado como ponto de verificação se as linhas estiverem ordenadas por ordem ascendente. Um exemplo é 1 de março de 2019 03:00:00. Em seguida, o próximo lote de N linhas é obtido com "CreatedDateTime > 1 de março de 2019 03:00:00" na consulta.

Ignorar linhas eliminadas de forma recuperável (Opcional)

Para excluir as linhas eliminadas de forma recuperável na base de dados de serem indexadas, especifique o nome e o valor da coluna de eliminação recuperável que indica que a linha foi eliminada.

Definições de eliminação recuperável:

Pesquisa completa: Gerir permissões de pesquisa

Selecione Gerir permissões para escolher as várias colunas de controlo de acesso (ACL) que especificam o mecanismo de controlo de acesso. Selecione o nome da coluna que especificou na consulta SQL de pesquisa completa.

Espera-se que cada uma das colunas da ACL seja uma coluna de valores múltiplos. Estes múltiplos valores de ID podem ser separados por separadores como ponto e vírgula (;), vírgula (,) e assim sucessivamente. Tem de especificar este separador no campo separador de valor .

Os seguintes tipos de ID são suportados para utilização como ACLs:

  • Nome Principal de Utilizador (UPN): Um Nome Principal de Utilizador (UPN) é o nome de um utilizador do sistema num formato de endereço de e-mail. Um UPN (por exemplo: john.doe@domain.com) consiste no nome de utilizador (nome de início de sessão), separador (o símbolo @) e nome de domínio (sufixo UPN).
  • Microsoft Entra ID: No Microsoft Entra ID, cada utilizador ou grupo tem um ID de objeto semelhante a "e0d3ad3d-0000-1111-2222-3c5f5c52ab9b"
  • ID de Segurança do Active Directory (AD): numa configuração do AD no local, todos os utilizadores e grupos têm um identificador de segurança exclusivo imutável que se assemelha a "S-1-5-21-3878594291-2115959936-132693609-65242".

Definições de permissão de pesquisa para configurar listas de controlo de acesso.

Passo 3b: Pesquisa incremental (Opcional)

Neste passo opcional, forneça uma consulta SQL para executar uma pesquisa incremental da base de dados. Com esta consulta, o conector SQL determina quaisquer alterações aos dados desde a última pesquisa incremental. Tal como na pesquisa completa, selecione entre as opções Consulta, Pesquisa ou Obter. Especifique o mesmo conjunto de colunas da ACL que especificou na consulta de pesquisa completa.

Os componentes na imagem seguinte assemelham-se aos componentes de pesquisa completos com uma exceção. Neste caso, "ModifiedDateTime" é a coluna de marca d'água selecionada. Reveja os passos de pesquisa completos para saber como escrever a consulta de pesquisa incremental e veja a imagem seguinte como um exemplo.

Script de pesquisa incremental que mostra as propriedades OrderTable, AclTable e exemplo que podem ser utilizadas.

Passo 4: Atribuir etiquetas de propriedade

Siga as instruções de configuração gerais.

Passo 5: Gerir o esquema

Siga as instruções de configuração gerais.

Passo 6: Gerir permissões de pesquisa

Pode optar por utilizar as ACLs especificadas no ecrã de pesquisa completa ou pode substitui-las para tornar os seus conteúdos visíveis para todos.

Passo 7: escolher as definições de atualização

O conector SQL Oracle suporta agendas de atualização para pesquisas completas e incrementais. Recomendamos que defina ambos.

Uma agenda de pesquisa completa localiza as linhas eliminadas que foram sincronizadas anteriormente com o índice do Microsoft Search e quaisquer linhas que tenham saído do filtro de sincronização. Quando se liga pela primeira vez à base de dados, é executada uma pesquisa completa para sincronizar todas as linhas obtidas a partir da consulta de pesquisa completa. Para sincronizar novas linhas e fazer atualizações, tem de agendar pesquisas incrementais.

Passo 8: rever a ligação

Siga as instruções de configuração gerais.

Limitações

O conector SQL oracle tem estas limitações na versão de pré-visualização:

  • A base de dados no local tem de executar a versão 11g ou posterior da Base de Dados Oracle.
  • As ACLs só são suportadas com um Nome Principal de Utilizador (UPN), o Microsoft Entra ID ou o Active Directory Security.
  • A indexação de conteúdo avançado dentro de colunas de base de dados não é suportada. Exemplos desses conteúdos são HTML, JSON, XML, blobs e análises de documentos que existem como ligações dentro das colunas da base de dados.

Solução de problemas

Depois de publicar a ligação, pode rever o estado no separador Origens de Dados no centro de administração. Para saber como fazer atualizações e eliminações, consulte Gerir o conector. Pode encontrar passos de resolução de problemas frequentemente vistos aqui.

Se tiver outros problemas ou quiser fornecer feedback, escreva-nos aka.ms/TalkToGraphConnectors.