Freigeben über


Oracle SQL Microsoft Graph-Connector

Mit dem Oracle SQL Graph-Connector können Ihre organization Daten aus einer lokalen Oracle-Datenbank ermitteln und indizieren. Der Connector indiziert den angegebenen Inhalt in Microsoft Search. Um den Index mit Quelldaten auf dem neuesten Stand zu halten, unterstützt er regelmäßige vollständige und inkrementelle Durchforstungen. Mit dem Oracle SQL-Connector können Sie auch den Zugriff auf Suchergebnisse für bestimmte Benutzer einschränken.

Hinweis

Lesen Sie den Artikel Einrichten von Microsoft Graph-Connectors im Microsoft 365 Admin Center Artikel, um die allgemeinen Setupanweisungen für Microsoft Graph-Connectors zu verstehen.

Dieser Artikel richtet sich an alle Benutzer, die einen Oracle SQL Graph-Connector konfigurieren, ausführen und überwachen. Es ergänzt den allgemeinen Einrichtungsprozess und zeigt Anweisungen, die nur für den Oracle SQL Graph-Connector gelten. Dieser Artikel enthält auch Informationen zur Problembehandlung und zu Einschränkungen.

Bevor Sie beginnen

Installieren des Connector-Agents

Um auf Ihre lokalen Drittanbieterdaten zuzugreifen, müssen Sie den Graph-Connector-Agent installieren und konfigurieren. Weitere Informationen finden Sie unter Installieren des Graph-Connector-Agents .

Schritt 1: Hinzufügen eines Connectors im Microsoft 365 Admin Center

Hinzufügen eines Oracle SQL-Connectors

Befolgen Sie die allgemeinen Setupanweisungen.

Schritt 2: Benennen der Verbindung

Befolgen Sie die allgemeinen Setupanweisungen.

Schritt 3: Konfigurieren der Verbindungseinstellungen

Um Ihren Oracle SQL-Connector mit einer Datenquelle zu verbinden, müssen Sie den Datenbankserver, den Sie durchforsten möchten, und den lokalen Graph-Connector-Agent konfigurieren. Anschließend können Sie mit der erforderlichen Authentifizierungsmethode eine Verbindung mit der Datenbank herstellen.

Für den Oracle SQL-Connector müssen Sie Hostname, Port und Dienstname (Datenbank) zusammen mit der bevorzugten Authentifizierungsmethode, dem Benutzernamen und dem Kennwort angeben.

Wenn der Dienstname nicht verfügbar ist und Sie eine Verbindung mithilfe der SID herstellen, kann der Dienstname mithilfe eines der folgenden Befehle abgeleitet werden (um als SYS-Administrator ausgeführt zu werden):

  • Wählen Sie SERVICE_NAME aus gv$session aus, wobei sid in ist (wählen Sie sid aus v$MYSTAT aus);
  • wählen Sie sys_context('userenv','service_name') aus dual;

Hinweis

Ihre Datenbank muss oracle database version 11g oder höher ausführen, damit der Connector eine Verbindung herstellen kann. Der Connector unterstützt Oracle-Datenbanken, die auf Windows-, Linux- und Azure-VM-Plattformen gehostet werden.

Zum Durchsuchen des Datenbankinhalts müssen Sie sql-Abfragen angeben, wenn Sie den Connector konfigurieren. Diese SQL-Abfragen müssen alle Datenbankspalten benennen, die Sie indizieren möchten (d. h. Quelleigenschaften), einschließlich aller SQL-Joins, die ausgeführt werden müssen, um alle Spalten abzurufen. Um den Zugriff auf Suchergebnisse einzuschränken, müssen Sie Access Control Lists (ACLs) in SQL-Abfragen angeben, wenn Sie den Connector konfigurieren.

Schritt 3a: Vollständige Durchforstung (erforderlich)

In diesem Schritt konfigurieren Sie die SQL-Abfrage, die eine vollständige Durchforstung der Datenbank ausführt. Bei der vollständigen Durchforstung werden alle Spalten oder Eigenschaften ausgewählt, in denen Sie die Optionen Abfrage, Suche oder Abrufen auswählen möchten. Sie können auch ACL-Spalten angeben, um den Zugriff auf Suchergebnisse auf bestimmte Benutzer oder Gruppen einzuschränken.

Tipp

Um alle benötigten Spalten abzurufen, können Sie mehrere Tabellen verknüpfen.

Skript, das die OrderTable und AclTable mit Beispieleigenschaften zeigt.

Auswählen von Datenspalten (erforderlich) und ACL-Spalten (optional)

Das Beispiel veranschaulicht die Auswahl von fünf Datenspalten, die die Daten für die Suche enthalten: OrderId, OrderTitle, OrderDesc, CreatedDateTime und IsDeleted. Zum Festlegen von Ansichtsberechtigungen für jede Datenzeile können Sie optional die folgenden ACL-Spalten auswählen: AllowedUsers, AllowedGroups, DeniedUsers und DeniedGroups. Für alle diese Datenspalten können Sie die Optionen Abfrage, Suche oder Abrufen auswählen.

Wählen Sie Datenspalten aus, wie in dieser Beispielabfrage gezeigt: SELECT OrderId, OrderTitle, OrderDesc, AllowedUsers, AllowedGroups, DeniedUsers, DeniedGroups, CreatedDateTime, IsDeleted

Um den Zugriff auf die Suchergebnisse zu verwalten, können Sie eine oder mehrere ACL-Spalten in der Abfrage angeben. Mit dem SQL-Connector können Sie den Zugriff auf Datensatzebene steuern. Sie können die gleiche Zugriffssteuerung für alle Datensätze in einer Tabelle verwenden. Wenn die ACL-Informationen in einer separaten Tabelle gespeichert sind, müssen Sie möglicherweise eine Verknüpfung mit diesen Tabellen in Ihrer Abfrage durchführen.

Die Verwendung der einzelnen ACL-Spalten in der obigen Abfrage wird unten beschrieben. In der folgenden Liste werden die vier Zugriffssteuerungsmechanismen erläutert.

  • AllowedUsers: Diese Option gibt die Liste der Benutzer-IDs an, die auf die Suchergebnisse zugreifen können. Im folgenden Beispiel hätte die Liste der Benutzer: john@contoso.com, keith@contoso.comund lisa@contoso.com nur Zugriff auf einen Datensatz mit OrderId = 12.
  • AllowedGroups: Diese Option gibt die Gruppe von Benutzern an, die auf die Suchergebnisse zugreifen können. Im folgenden Beispiel hätte group sales-team@contoso.com nur Zugriff auf den Datensatz mit OrderId = 12.
  • DeniedUsers: Diese Option gibt die Liste der Benutzer an, die keinen Zugriff auf die Suchergebnisse haben. Im folgenden Beispiel haben Benutzer john@contoso.com und keith@contoso.com keinen Zugriff auf den Datensatz mit OrderId = 13, während alle anderen Zugriff auf diesen Datensatz haben.
  • DeniedGroups: Diese Option gibt die Gruppe von Benutzern an, die keinen Zugriff auf die Suchergebnisse haben. Im folgenden Beispiel haben Gruppen engg-team@contoso.com und pm-team@contoso.com keinen Zugriff auf den Datensatz mit OrderId = 15, während alle anderen Zugriff auf diesen Datensatz haben.

Beispieldaten, die die OrderTable und AclTable mit Beispieleigenschaften zeigen.

Unterstützte Datentypen

In der folgenden Tabelle sind die Datentypen zusammengefasst, die vom Oracle SQL-Connector unterstützt werden. Die Tabelle fasst auch den Indizierungsdatentyp für den unterstützten SQL-Datentyp zusammen. Weitere Informationen zu von Microsoft Graph-Connectors unterstützten Datentypen für die Indizierung finden Sie in der Dokumentation zu Eigenschaftenressourcentypen.

Kategorie Quelldatentyp Indizierungsdatentyp
Zahlendatentyp NUMBER(p,0) int64 (für p <= 18)
double (für P > 18)
Gleitkommazahlen-Datentyp NUMBER(p,s)
FLOAT(p)
double
Datumsdatentyp DATE
TIMESTAMP
TIMESTAMP(n)
Datum/Uhrzeit
Zeichendatentyp CHAR(n)
VARCHAR
VARCHAR2
LANGE
CLOB
NCLOB
string
Unicode-Zeichendatentyp NCHAR
NVARCHAR
string
RowID-Datentyp ROWID
UROWID
string

Für jeden anderen Datentyp, der derzeit nicht direkt unterstützt wird, muss die Spalte explizit in einen unterstützten Datentyp umgewandelt werden.

Wasserzeichen (erforderlich)

Um eine Überlastung der Datenbank zu verhindern, setzt der Connector Vollständige Durchforstungsabfragen in Batches mit einer Vollständigen Durchforstungswasserzeichenspalte fort. Mithilfe des Werts der Wasserzeichenspalte wird jeder nachfolgende Batch abgerufen, und die Abfrage wird ab dem letzten Prüfpunkt fortgesetzt. Im Wesentlichen ist dies ein Mechanismus zum Steuern der Datenaktualisierung für vollständige Durchforstungen.

Erstellen Sie Abfrageausschnitte für Wasserzeichen, wie in diesen Beispielen gezeigt:

  • WHERE (CreatedDateTime > @watermark). Zitieren Sie den Namen der Wasserzeichenspalte mit dem reservierten Schlüsselwort (keyword) @watermark. Sie können die Wasserzeichenspalte nur in aufsteigender Reihenfolge sortieren.
  • ORDER BY CreatedDateTime ASC. Sortieren Sie die Wasserzeichenspalte in aufsteigender Reihenfolge.

In der in der folgenden Abbildung gezeigten CreatedDateTime Konfiguration ist die ausgewählte Wasserzeichenspalte. Um den ersten Batch von Zeilen abzurufen, geben Sie den Datentyp der Wasserzeichenspalte an. In diesem Fall ist DateTimeder Datentyp .

Konfiguration der Wasserzeichenspalte.

Die erste Abfrage ruft die erste N Zeilenanzahl mit ab: "CreatedDateTime > 1. January 1753 00:00:00" (Mindestwert des DateTime-Datentyps). Nachdem der erste Batch abgerufen wurde, wird der höchste im Batch zurückgegebene Wert CreatedDateTime als Prüfpunkt gespeichert, wenn die Zeilen in aufsteigender Reihenfolge sortiert werden. Ein Beispiel ist der 1. März 2019 um 03:00:00 Uhr. Anschließend wird der nächste Batch von N Zeilen mithilfe von "CreatedDateTime > 1. März 2019 03:00:00" in der Abfrage abgerufen.

Überspringen vorläufig gelöschter Zeilen (optional)

Um vorläufig gelöschte Zeilen in Ihrer Datenbank von der Indizierungen auszuschließen, geben Sie den Spaltennamen und den Wert für vorläufiges Löschen an, der angibt, dass die Zeile gelöscht wurde.

Einstellungen für vorläufiges Löschen:

Vollständige Durchforstung: Verwalten von Suchberechtigungen

Wählen Sie Berechtigungen verwalten aus, um die verschiedenen Zugriffssteuerungsspalten (Access Control, ACL) auszuwählen, die den Zugriffssteuerungsmechanismus angeben. Wählen Sie den Spaltennamen aus, den Sie in der vollständigen SQL-Durchforstungsabfrage angegeben haben.

Es wird erwartet, dass jede der ACL-Spalten eine mehrwertige Spalte ist. Diese mehrfachen ID-Werte können durch Trennzeichen wie Semikolon (;), Komma (,) usw. getrennt werden. Sie müssen dieses Trennzeichen im Werttrennzeichenfeld angeben.

Die folgenden ID-Typen werden für die Verwendung als ACLs unterstützt:

  • Benutzerprinzipalname (UPN): Ein Benutzerprinzipalname (USER Principal Name, UPN) ist der Name eines Systembenutzers im E-Mail-Adressformat. Ein UPN (z. B. john.doe@domain.com) besteht aus dem Benutzernamen (Anmeldename), dem Trennzeichen (dem @-Symbol) und dem Domänennamen (UPN-Suffix).
  • Microsoft Entra-ID: In Microsoft Entra ID verfügt jeder Benutzer oder jede Gruppe über eine Objekt-ID, die etwa wie "e0d3ad3d-0000-1111-2222-3c5f5c52ab9b" aussieht.
  • Active Directory-Sicherheits-ID (AD): In einem lokalen AD-Setup verfügt jeder Benutzer und jede Gruppe über eine unveränderliche, eindeutige Sicherheits-ID, die in etwa wie "S-1-5-21-3878594291-2115959936-132693609-65242" aussieht.

Suchberechtigungseinstellungen zum Konfigurieren von Zugriffssteuerungslisten.

Schritt 3b: Inkrementelle Durchforstung (optional)

Geben Sie in diesem optionalen Schritt eine SQL-Abfrage an, um eine inkrementelle Durchforstung der Datenbank auszuführen. Mit dieser Abfrage bestimmt der SQL-Connector alle Änderungen an den Daten seit der letzten inkrementellen Durchforstung. Wählen Sie wie bei der vollständigen Durchforstung zwischen den Optionen Abfrage, Suche oder Abrufen aus. Geben Sie den gleichen Satz von ACL-Spalten an, den Sie in der vollständigen Durchforstungsabfrage angegeben haben.

Die Komponenten in der folgenden Abbildung ähneln den vollständigen Durchforstungskomponenten mit einer Ausnahme. In diesem Fall ist "ModifiedDateTime" die ausgewählte Wasserzeichenspalte. Sehen Sie sich die vollständigen Durchforstungsschritte an, um zu erfahren, wie Sie Ihre Abfrage für die inkrementelle Durchforstung schreiben, und sehen Sie sich die folgende Abbildung als Beispiel an.

Skript für die inkrementelle Durchforstung mit OrderTable, AclTable und Beispieleigenschaften, die verwendet werden können.

Schritt 4: Zuweisen von Eigenschaftenbezeichnungen

Befolgen Sie die allgemeinen Setupanweisungen.

Schritt 5: Verwalten des Schemas

Befolgen Sie die allgemeinen Setupanweisungen.

Schritt 6: Verwalten von Suchberechtigungen

Sie können die acLs verwenden, die im vollständigen Durchforstungsbildschirm angegeben sind , oder Sie können sie überschreiben, um Ihre Inhalte für alle sichtbar zu machen.

Schritt 7: Auswählen der Aktualisierungseinstellungen

Der Oracle SQL-Connector unterstützt Aktualisierungszeitpläne für vollständige und inkrementelle Durchforstungen. Es wird empfohlen, beides festzulegen.

Ein vollständiger Durchforstungszeitplan sucht gelöschte Zeilen, die zuvor mit dem Microsoft Search-Index synchronisiert wurden, sowie alle Zeilen, die aus dem Synchronisierungsfilter verschoben wurden. Wenn Sie zum ersten Mal eine Verbindung mit der Datenbank herstellen, wird eine vollständige Durchforstung ausgeführt, um alle Zeilen zu synchronisieren, die aus der vollständigen Durchforstungsabfrage abgerufen wurden. Um neue Zeilen zu synchronisieren und Updates vorzunehmen, müssen Sie inkrementelle Durchforstungen planen.

Schritt 8: Überprüfen der Verbindung

Befolgen Sie die allgemeinen Setupanweisungen.

Problembehandlung

Darunter finden Sie eine Liste der häufigen Fehler, die beim Konfigurieren des Connectors beobachtet wurden, und deren mögliche Gründe.

Konfigurationsschritt Fehlermeldung Mögliche Gründe
Datenbankeinstellungen Fehler vom Datenbankserver: Timeout bei Verbindungsanforderung Ungültiger Hostname
Host nicht erreichbar
Datenbankeinstellungen Fehler vom Datenbankserver: ORA-12541: TNS: Kein Listener Ungültiger Port
Datenbankeinstellungen Fehler vom Datenbankserver: ORA-12514: TNS: Der Listener weiß derzeit nicht, dass der Dienst im Connectordeskriptor angefordert wurde. Ungültiger Dienstname (Datenbankname)
Datenbankeinstellungen Fehler vom Datenbankserver: Fehler bei der Anmeldung für den Benutzer ""user. Ungültiger Benutzername oder ungültiges Kennwort
Vollständige Durchforstung Die von der vollständigen Durchforstung zurückgegebene SQL-Abfrage column_name enthält nicht alphanumerisches Zeichen. Nicht alphanumerische Zeichen (z. B. Unterstriche) sind in Spaltennamen in der SELECT-Klausel nicht zulässig. Verwenden Sie Aliase, um Spalten umzubenennen und nicht alphanumerische Zeichen zu entfernen (Beispiel : SELECT column_name AS columnName).

Begrenzungen

Der Oracle SQL-Connector weist in der Vorschauversion folgende Einschränkungen auf:

  • Die lokale Datenbank muss Oracle Database Version 11g oder höher ausführen.
  • ACLs werden nur mithilfe eines Benutzerprinzipalnamens (User Principal Name, UPN), Microsoft Entra-ID oder Active Directory-Sicherheit unterstützt.
  • Das Indizieren von umfangreichen Inhalten in Datenbankspalten wird nicht unterstützt. Beispiele für solche Inhalte sind HTML, JSON, XML, Blobs und Dokumentanalysen, die als Links in den Datenbankspalten vorhanden sind.