Azure SQL- und Microsoft SQL Server Microsoft Graph-Connectors
Die Microsoft SQL Server- oder Azure SQL Microsoft Graph-Connectors ermöglichen es Ihren 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 indizieren. Der Connector indiziert den angegebenen Inhalt in Microsoft Search und Microsoft 365 Copilot. 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.
Dieser Artikel richtet sich an Microsoft 365-Administratoren oder alle Personen, die einen Azure SQL oder einen Microsoft SQL Server Microsoft Graph-Connector konfigurieren, ausführen und überwachen.
Funktionen
- Indizieren Sie Datensätze von Ihrem MS SQL Server oder Azure SQL Datenbank mithilfe einer SQL-Abfrage.
- Geben Sie Zugriffsberechtigungen für jeden Datensatz mit einer Liste von Benutzern oder Gruppen an, die in der SQL-Abfrage hinzugefügt wurden.
- Ermöglichen Sie es Ihren Endbenutzern, Fragen im Zusammenhang mit indizierten Datensätzen in Copilot zu stellen.
- Verwenden Sie die semantische Suche in Copilot , um Es Benutzern zu ermöglichen, relevante Inhalte basierend auf Schlüsselwörtern, persönlichen Vorlieben und sozialen Verbindungen zu finden.
Begrenzungen
- Microsoft SQL Server Connector: Die lokale Datenbank muss SQL Server Version 2008 oder höher ausgeführt werden.
- Azure SQL Connector: Das Microsoft 365-Abonnement und das Azure-Abonnement (hosten Azure SQL Datenbank) müssen sich innerhalb desselben Microsoft Entra ID befinden. Mandantenübergreifender Datenfluss wird nicht unterstützt.
- Um eine hohe Durchforstungsgeschwindigkeit und eine bessere Leistung zu unterstützen, ist der Connector so konzipiert, dass nur OLTP-Workloads (OnlineTransaktionsverarbeitung) unterstützt werden. OLAP-Workloads (Online Analytical Processing), die die bereitgestellte SQL-Abfrage nicht in einem Timeout von 40 Sekunden ausführen und nicht unterstützt werden.
- 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.
Voraussetzungen
- Sie müssen der Suchadministrator für den Microsoft 365-Mandanten Ihres organization sein.
- Installieren des Microsoft Graph-Connector-Agents (gilt nur für DEN MS SQL-Connector): Um auf Ihre Microsoft SQL Server zugreifen zu können, müssen Sie den Connector-Agent installieren und konfigurieren. Weitere Informationen finden Sie unter Installieren des Microsoft Graph-Connector-Agents .
- Dienstkonto: Um eine Verbindung mit Ihrer SQL-Datenbank herzustellen und Microsoft Graph Connector die regelmäßige Aktualisierung von Datensätzen zu ermöglichen, benötigen Sie ein Dienstkonto mit Leseberechtigungen für das Dienstkonto.
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 für den Computer verfügen, auf dem der Connector-Agent installiert ist. Weitere Informationen finden Sie unter Verwaltung von Anmelderichtlinien.
Erste Schritte mit Setup
1. Anzeigename
Ein Anzeigename wird verwendet, um jedes Zitat in Copilot zu identifizieren, sodass Benutzer die zugeordnete Datei oder das zugehörige Element leicht erkennen können. Anzeigename steht auch für vertrauenswürdigen Inhalt. Der Anzeigename wird auch als Inhaltsquellenfilter verwendet. Für dieses Feld ist ein Standardwert vorhanden, aber Sie können es an einen Namen anpassen, den Benutzer in Ihrem organization erkennen.
2. SQL Server
Um eine Verbindung mit Ihren SQL-Daten herzustellen, benötigen Sie die SQL Server-Adresse und den Datenbanknamen.
3. Authentifizierungstyp
Azure SQL Connector unterstützt nur Microsoft Entra ID OIDC-Authentifizierung (OpenID Connect), um eine Verbindung mit der Datenbank herzustellen.
Registrieren einer App (nur für Azure SQL Microsoft Graph-Connector)
Für Azure SQL Connector müssen Sie eine App in Microsoft Entra ID registrieren, damit die Microsoft Search-App und Microsoft 365 Copilot auf Daten für die Indizierung zugreifen können. 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- und Mandanten-ID) notieren, müssen Sie einen neuen geheimen Clientschlüssel generieren. Der Client 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 und Microsoft 365 Copilot.
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 Sie ein neues Abfragefenster.
- Erstellen Sie einen neuen Benutzer, indem Sie den Befehl "CREATE USER [App-Name] FROM EXTERNAL PROVIDER" ausführen.
- Fügen Sie den Benutzer der Rolle hinzu, indem Sie den Befehl "exec sp_addrolemember 'db_datareader', [App-Name]" oder "ALTER ROLE db_datareader ADD MEMBER [App-Name]" ausführen.
Weitere Informationen zum Widerrufen des Zugriffs auf alle in Microsoft Entra ID registrierten Apps finden Sie unter Entfernen einer registrierten App.
Firewalleinstellungen (nur für Azure SQL Microsoft Graph-Connector)
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 | Microsoft 365 Enterprise | Microsoft 365 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 | – |
4. Rollout für eine begrenzte Zielgruppe
Stellen Sie diese Verbindung für eine eingeschränkte Benutzerbasis bereit, wenn Sie sie in Copilot und anderen Suchoberflächen überprüfen möchten, bevor Sie den Rollout auf eine breitere Zielgruppe erweitern. Weitere Informationen zum eingeschränkten Rollout finden Sie hier.
Inhalt
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 (Quelleigenschaften). Dies schließt alle SQL-Joins ein, 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.
1. Vollständige Durchforstung (erforderlich)
a.
Auswählen von Datenspalten (erforderlich) und ACL-Spalten (optional)
[Klicken Sie, um zu erweitern] Auswählen von Datenspalten für eine vollständige Durchforstungsabfrage.
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, die in Microsoft Copilot oder Suche angezeigt werden müssen. 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.
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 Abfragen, Suchen, Abrufen oder Verfeinern.
Wählen Sie Datenspalten aus, wie in dieser Beispielabfrage gezeigt: SELECT orderId, orderTitle, orderDesc, allowedUsers, allowedGroups, deniedUsers, deniedGroups, createdDateTime, isDeleted
Die SQL-Connectors lassen keine Spaltennamen mit nichtalphanumerischen Zeichen in der SELECT-Klausel zu. 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 eine Liste von Benutzern: 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 einen Datensatz mit OrderId = 15, während alle anderen Zugriff auf diesen Datensatz haben.
b.
Unterstützte Datentypen
[Klicken Sie, um zu erweitern] Liste der unterstützten Datentypen.
In der 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 Zeichenfolgenauflistungstyp 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.
c.
Wasserzeichen (erforderlich)
[Klicken Sie, um zu erweitern] Angeben der Wasserzeichenspalte in einer vollständigen Durchforstungsabfrage
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.
2. Verwalten von Eigenschaften
Der SQL-Connector übernimmt alle Spalten, die in der vollständigen SQL-Durchforstungsabfrage angegeben sind, als Quelleigenschaften für die Erfassung. In diesem Schritt können Sie das Suchschema für Ihre Inhalte definieren. Dies umfasst das Definieren der Suchanmerkungen wie Suchen, Abrufen, Abfragen und Verfeinern für ausgewählte Quelleigenschaften. Dies umfasst auch das Zuweisen von semantischen Bezeichnungen und Aliasen, um die Relevanz der Suche zu verbessern. Weitere Informationen zum Suchschema finden Sie in der Dokumentation zu Richtlinien für "Eigenschaften verwalten".
3. Inkrementelle Durchforstung (optional)
a.
Abfrage für inkrementelle Synchronisierung
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, Abrufen oder Verfeinern 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.
b. Anweisungen zum vorläufigen Löschen (optional)
In einem SQL-Datensatzsystem ist ein vorläufiges Löschen eine Technik, bei der Sie einen Datensatz nicht physisch aus einer Datenbank entfernen, sondern ihn durch Festlegen eines bestimmten Flags oder einer bestimmten Spalte als "gelöscht" markieren. Dadurch kann der Datensatz in der Datenbank verbleiben, ist aber logischerweise von den meisten Vorgängen ausgeschlossen. Um vorläufig gelöschte Zeilen in Ihrer Datenbank während der inkrementellen Durchforstung zu löschen, geben Sie den Spaltennamen und den Wert des vorläufigen Löschens an, der angibt, dass die Zeile gelöscht wurde.
Benutzer
Sie können die Option Nur Personen mit Zugriff auf diese Datenquelle verwenden, um den Zugriff auf Benutzer oder Gruppen einzuschränken, wie in der vollständigen Durchforstungsabfrage ausgewählt, oder Sie können sie außer Kraft setzen, um Ihre Inhalte für alle sichtbar zu machen.
1. Zuordnungsspalten mit Informationen zu Zugriffsberechtigungen
Wählen Sie die verschiedenen Zugriffssteuerungsspalten (Access Control, ACL) aus, die den Zugriffssteuerungsmechanismus angeben. Wählen Sie den Spaltennamen aus, den Sie in der vollständigen SQL-Durchforstungsabfrage angegeben haben. Beachten Sie, dass "Verweigern" Vorrang vor "Zulassen"-Berechtigungen hat.
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.
Synchronisieren
Das Aktualisierungsintervall bestimmt, wie oft Ihre Daten zwischen der Datenquelle und dem Graph-Connectorindex synchronisiert werden.
Sie können vollständige und inkrementelle Durchforstungen basierend auf den hier aufgeführten Planungsoptionen konfigurieren. Standardmäßig ist die inkrementelle Durchforstung (sofern konfiguriert) für alle 15 Minuten und die vollständige Durchforstung für jeden Tag festgelegt. Bei Bedarf können Sie diese Zeitpläne an Ihre Datenaktualisierungsanforderungen anpassen.
An diesem Punkt können Sie die Verbindung für Azure SQL oder MS SQL erstellen. Sie können auf die Schaltfläche "Erstellen" klicken, um Ihre Verbindung zu veröffentlichen und Daten aus Ihrer Datenbank zu indizieren.
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 Probleme haben oder Feedback geben möchten, wenden Sie sich an Microsoft Graph | Unterstützung.