Azure SQL- und Microsoft SQL Server Microsoft Graph-Connectors
Der Microsoft SQL Server- oder Azure SQL Microsoft Graph-Connector ermöglicht es Ihrem organization, Daten aus einer lokalen SQL Server-Datenbank oder einer datenbank, die in Ihrem Azure SQL instance in der Cloud gehostet wird, zu ermitteln und zu 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 diesen SQL-Connectors können Sie auch den Zugriff auf Suchergebnisse für bestimmte Benutzer einschränken.
Hinweis
Lesen Sie den Artikel Einrichten Ihres Microsoft Graph-Connectors , um die allgemeinen Anweisungen zum Einrichten von Graph-Connectors zu verstehen.
Dieser Artikel richtet sich an alle Benutzer, die einen Azure SQL oder einen Microsoft SQL Server-Connector konfigurieren, ausführen und überwachen. Es ergänzt den allgemeinen Einrichtungsprozess und zeigt Anweisungen, die nur für die Azure SQL- und Microsoft SQL Server-Connectors gelten. Dieser Artikel enthält auch Informationen zu Einschränkungen für beide Connectors.
Bevor Sie beginnen
Installieren des Microsoft Graph-Connector-Agents (nur für den lokalen Microsoft SQL Server-Connector erforderlich)
Um auf Ihre lokalen Drittanbieterdaten zuzugreifen, müssen Sie den Connector-Agent installieren und konfigurieren. Weitere Informationen finden Sie unter Installieren des Microsoft Graph-Connector-Agents .
Hinweis
Wenn Sie beim Konfigurieren des Microsoft SQL Server-Connectors Windows-Authentifizierung verwenden, muss der Benutzer, mit dem Sie sich anmelden möchten, über interaktive Anmelderechte auf dem Computer verfügen, auf dem der Connector-Agent installiert ist. Informationen zum Überprüfen der Anmelderechte finden Sie in der Dokumentation zur Verwaltung von Anmelderichtlinien .
Schritt 1: Hinzufügen eines Connectors im Microsoft 365 Admin Center
Befolgen Sie die allgemeinen Setupanweisungen.
Schritt 2: Benennen der Verbindung
Befolgen Sie die allgemeinen Setupanweisungen.
Schritt 3: Konfigurieren der Verbindungseinstellungen
Registrieren einer App (nur für Azure SQL Connector)
Für Azure SQL Connector müssen Sie eine App in Microsoft Entra ID registrieren, damit die Microsoft Search-App auf Daten für die Indizierung zugreifen kann. Weitere Informationen zum Registrieren einer App finden Sie in der Microsoft Graph-Dokumentation zum Registrieren einer App.
Nachdem Sie die App-Registrierung abgeschlossen und den App-Namen, die Anwendungs-ID (Client-ID) und die Mandanten-ID notieren, müssen Sie einen neuen geheimen Clientschlüssel generieren. Der geheime Clientschlüssel wird nur einmal angezeigt. Beachten Sie& den geheimen Clientschlüssel sicher zu speichern. Verwenden Sie die Client-ID und den geheimen Clientschlüssel beim Konfigurieren einer neuen Verbindung in Microsoft Search.
Zum Hinzufügen der registrierten App zu Ihrer Azure SQL-Datenbank müssen Sie Folgendes ausführen:
- Melden Sie sich bei Ihrer Azure SQL-Datenbank an.
- Öffnen eines neuen Abfragefensters
- Erstellen Sie einen neuen Benutzer, indem Sie den Befehl "CREATE USER [App-Name] FROM EXTERNAL PROVIDER" ausführen.
- Fügen Sie einen Benutzer zur Rolle hinzu, indem Sie den Befehl "exec sp_addrolemember 'db_datareader', [App-Name]" oder "ALTER ROLE db_datareader ADD MEMBER [App-Name]" ausführen.
Hinweis
Informationen zum Widerrufen des Zugriffs auf alle in Microsoft Entra ID registrierten Apps finden Sie in der Azure-Dokumentation zum Entfernen einer registrierten App.
Verbindungseinstellungen
Um Ihren Microsoft SQL Server-Connector mit einer Datenquelle zu verbinden, müssen Sie den Datenbankserver, den Sie durchforsten möchten, und den lokalen Agent konfigurieren. Anschließend können Sie mit der erforderlichen Authentifizierungsmethode eine Verbindung mit der Datenbank herstellen.
Hinweis
- Ihre Datenbank muss SQL Server Version 2008 oder höher ausgeführt werden, damit der Microsoft SQL Server Connector eine Verbindung herstellen kann.
- Der Azure SQL-Connector erlaubt nur die Erfassung aus einem Azure SQL instance im selben Mandanten wie microsoft 365. Mandantenübergreifender Datenfluss wird nicht unterstützt.
Für den Azure SQL-Connector müssen Sie nur den Servernamen oder die IP-Adresse angeben, mit dem Sie eine Verbindung herstellen möchten. Azure SQL Connector unterstützt nur Microsoft Entra ID OIDC-Authentifizierung (OpenID Connect), um eine Verbindung mit der Datenbank herzustellen.
Um die Sicherheit zu erhöhen, können Sie IP-Firewallregeln für Ihre Azure SQL Server oder Datenbank konfigurieren. Weitere Informationen zum Einrichten von IP-Firewallregeln finden Sie in der Dokumentation zu IP-Firewallregeln. Fügen Sie die folgenden Client-IP-Adressbereiche in den Firewalleinstellungen hinzu.
Region | M365 Enterprise | M365 Government |
---|---|---|
NAM | 52.250.92.252/30, 52.224.250.216/30 | 52.245.230.216/30, 20.141.117.64/30 |
EUR | 20.54.41.208/30, 51.105.159.88/30 | – |
APC | 52.139.188.212/30, 20.43.146.44/30 | – |
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 beim Konfigurieren des Connectors Access Control Listen (ACLs) in SQL-Abfragen angeben.
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.
Auswählen von Datenspalten (erforderlich) und ACL-Spalten (optional)
Das Beispiel zeigt eine 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. Alle diese Datenspalten verfügen auch über die Optionen Abfrage, Suche oder Abrufen.
Wählen Sie Datenspalten aus, wie in dieser Beispielabfrage gezeigt: SELECT OrderId, OrderTitle, OrderDesc, AllowedUsers, AllowedGroups, DeniedUsers, DeniedGroups, CreatedDateTime, IsDeleted
Beachten Sie, dass die SQL-Connectors keine Spaltennamen mit nicht alphanumerischen Zeichen in der SELECT-Klausel zulassen. Entfernen Sie alle nicht alphanumerischen Zeichen aus Spaltennamen mithilfe eines Alias. Beispiel: SELECT column_name AS columnName
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 Spalte 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 Spalte 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 Spalte 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 Spalte 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.
Unterstützte Datentypen
In der folgenden Tabelle sind die SQL-Datentypen zusammengefasst, die in den MS SQL- und Azure SQL-Connectors 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 |
---|---|---|
Datum und Uhrzeit | date Datum/Uhrzeit datetime2 smalldatetime |
Datum/Uhrzeit |
Exakte Zahl | bigint int smallint tinyint |
int64 |
Exakte Zahl | Bit | Boolescher Wert |
Ungefähre Zahl | Gleitkommazahl real |
double |
Zeichenfolge | verkohlen varchar text |
string |
Unicode-Zeichenfolgen | nchar nvarchar ntext |
string |
String collection | verkohlen varchar text |
stringcollection* |
Andere Datentypen | uniqueidentifier | string |
*Um eine Spalte als StringCollection indizieren zu können, müssen Sie eine Zeichenfolge in den Zeichenfolgensammlungstyp umwandeln. Klicken Sie dazu in den Einstellungen für vollständige Durchforstung auf den Link "Datentypen bearbeiten", wählen Sie die entsprechenden Spalten als StringCollection aus, und geben Sie ein Trennzeichen zum Teilen der Zeichenfolge an.
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 steuert dieser Mechanismus die 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
. Wenn die Sortierreihenfolge der Wasserzeichenspalte aufsteigend ist, verwenden Sie>
; andernfalls verwenden Sie<
. -
ORDER BY CreatedDateTime ASC
. Sortieren Sie die Wasserzeichenspalte in aufsteigender oder absteigender 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 DateTime
der Datentyp .
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.
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 wie "e0d3ad3d-0000-1111-2222-3c5f5c52ab9b".
- 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.
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 alle Spalten aus, in denen Sie die Optionen Abfrage, Suche oder Abrufen auswählen möchten. 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.
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
Befolgen Sie die allgemeinen Setupanweisungen.
Schritt 8: Überprüfen der Verbindung
Befolgen Sie die allgemeinen Setupanweisungen.
Begrenzungen
Die SQL-Connectors weisen in der Vorschauversion folgende Einschränkungen auf:
- Microsoft SQL Server Connector: Die lokale Datenbank muss SQL Server Version 2008 oder höher ausgeführt werden.
- Das Microsoft 365-Abonnement und das Azure-Abonnement (Hosting Azure SQL Datenbank) müssen sich innerhalb desselben Microsoft Entra ID befinden.
- 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.
Problembehandlung
Nachdem Sie Ihre Verbindung veröffentlicht haben, können Sie die status auf der Registerkarte Datenquellen im Admin Center überprüfen. Informationen zum Durchführen von Updates und Löschungen finden Sie unter Verwalten ihres Connectors. Schritte zur Problembehandlung für häufig auftretende Probleme finden Sie hier.
Wenn Sie andere Probleme haben oder Feedback geben möchten, wenden Sie sich an uns unter Microsoft Graph | Unterstützen