Erstellen oder Aktualisieren von Datenquelle (Vorschau-REST-API)
Gilt für: 2023-07-01-Preview, 2021-04-30-Preview, 2020-06-30-Preview
Wichtig
2023-07-01-Preview (keine Änderungen).
2021-04-30-Preview fügt unterstützung für verwaltete Identitäten für Indexerverbindungen zu anderen Azure-Ressourcen hinzu:
- "Anmeldeinformationen" akzeptiert eine Azure-Ressourcen-ID als Wert, vorausgesetzt, der Suchdienst wird unter einer verwalteten Identität ausgeführt und Azure-Rollenzuweisungen gewähren Lesezugriff auf Daten.
- "Identität" akzeptiert eine benutzerseitig zugewiesene verwaltete Identität. Diese Eigenschaft ist die erste Ebene für Datenverbindungen. Es befindet sich auch unter "encryptionKey" zum Abrufen eines kundenseitig verwalteten Schlüssels in Azure Key Vault.
- Azure Files Unterstützung befindet sich in der Vorschauphase. Verwenden Sie eine Vorschau-API zum Indizieren aus dieser Datenquelle.
2020-06-30-Preview fügt Folgendes hinzu:
- "dataDeletionDetectionPolicy" akzeptiert "NativeBlobSoftDeleteDeletionDetectionPolicy" für Blobindexer.
- Azure Database for MySQL Unterstützung befindet sich in der Vorschauphase. Verwenden Sie eine Vorschau-API zum Indizieren aus dieser Datenquelle.
- Die Unterstützung der Cosmos DB-MongoDB-API und der Gremlin-API befindet sich in der Vorschauphase. Verwenden Sie eine Vorschau-API zum Indizieren aus dieser Datenquelle.
In Azure AI Search wird eine Datenquelle mit Indexern verwendet, die die Verbindungsinformationen für bedarfsgesteuerte oder geplante Datenaktualisierungen eines Zielindexes bereitstellen und Daten aus unterstützten Datenquellen abrufen.
Sie können entweder POST oder PUT für eine Erstellungsanforderung verwenden. Für beide stellt der Anforderungstext die Objektdefinition bereit.
POST https://[service name].search.windows.net/datasources?api-version=[api-version]
Content-Type: application/json
api-key: [admin key]
Verwenden Sie für Updateanforderungen PUT, und geben Sie den Indexernamen für den URI an.
PUT https://[service name].search.windows.net/datasources/[data source name]?api-version=[api-version]
Content-Type: application/json
api-key: [admin key]
HTTPS ist für alle Dienstanforderungen erforderlich. Wenn das Objekt nicht vorhanden ist, wird es erstellt. Wenn sie bereits vorhanden ist, wird sie mit der neuen Definition überschrieben.
Hinweis
Sobald eine Datenquelle vorhanden ist, können Sie die type-Eigenschaft für eine Updateanforderung nicht mehr ändern. Stattdessen sollten Sie eine neue Datenquelle mit dem gewünschten Typ erstellen.
URI-Parameter
Parameter | BESCHREIBUNG |
---|---|
Dienstname | Erforderlich. Legen Sie dies auf den eindeutigen, benutzerdefinierten Namen Ihres Suchdiensts fest. |
Datenquellenname (data source name) | Erforderlich für den URI, wenn PUT verwendet wird. Der Name muss klein geschrieben sein, mit einem Buchstaben oder einer Zahl beginnen, keine Schrägstriche oder Punkte aufweisen und weniger als 128 Zeichen lang sein. Nachdem Sie den Namen mit einem Buchstaben oder einer Zahl gestartet haben, kann der Rest des Namens beliebige Buchstaben, Zahlen und Bindestriche enthalten, solange die Bindestriche nicht aufeinander folgen. |
api-version | Erforderlich. Die aktuelle Vorschauversion ist 2023-07-01-Preview . Weitere Versionen finden Sie unter API-Versionen . |
Anforderungsheader
Die folgende Tabelle beschreibt die erforderlichen und optionalen Anforderungsheader.
Felder | BESCHREIBUNG |
---|---|
Content-Type | Erforderlich. Auf application/json |
api-key | Optional, wenn Sie Azure-Rollen verwenden und ein Bearertoken für die Anforderung bereitgestellt wird, andernfalls ist ein Schlüssel erforderlich. Ein API-Schlüssel ist eine eindeutige, vom System generierte Zeichenfolge, die die Anforderung bei Ihrem Suchdienst authentifiziert. Erstellen von Anforderungen muss einen api-key Header enthalten, der auf Ihren Administratorschlüssel (im Gegensatz zu einem Abfrageschlüssel) festgelegt ist. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit Azure AI Search mithilfe der Schlüsselauthentifizierung . |
Anforderungstext
Der Anforderungstext enthält eine Datenquellendefinition, die u. a. Folgendes umfasst: den Typ der Datenquelle, Anmeldeinformationen zum Lesen der Daten sowie optionale Richtlinien zur Erkennung von Datenänderungen und Datenlöschungen, die dazu verwendet werden, geänderte oder gelöschte Daten in der Datenquelle effizient zu identifizieren, wenn diese mit einem regelmäßig geplanten Indexer verwendet wird.
Der folgende JSON-Code ist eine allgemeine Darstellung des Standard Teile der Definition.
{
"name" : (optional on PUT; required on POST) "Name of the data source",
"description" : (optional) "Anything you want, or nothing at all",
"type" : (required) "Must be a supported data source",
"credentials" : (required) { "connectionString" : "Connection string for your data source" },
"container" : (required) { "name" : "Name of the table, collection, or blob container you wish to index" },
"dataChangeDetectionPolicy" : (optional) {See below for details },
"dataDeletionDetectionPolicy" : (optional) {See below for details },
"identity": (optional) {Sets the Resource ID of a managed identity. See below for details },
"encryptionKey":(optional) {
"keyVaultKeyName": "Name of the Azure Key Vault key used for encryption",
"keyVaultKeyVersion": "Version of the Azure Key Vault key",
"keyVaultUri": "URI of Azure Key Vault, also referred to as DNS name, that provides the key.",
"identity": "(Resource ID of a user-assigned managed identity, used for connecting to key vault)",
"accessCredentials": (Credentials for connecting to key vault. Omit if using a managed identity) {
"applicationId": "Azure AD Application ID that has access permissions to the key vault",
"applicationSecret": "Authentication key of the specified Azure AD application)"}
}
}
Die Anforderung enthält die folgenden Eigenschaften:
Eigenschaft | BESCHREIBUNG |
---|---|
name | Erforderlich. Den Namen der Datenquelle. Ein Datenquellenname darf nur Kleinbuchstaben, Ziffern oder Bindestriche enthalten, darf nicht mit Bindestrichen beginnen oder enden und ist auf 128 Zeichen beschränkt. |
description | Eine optionale Beschreibung. |
type | Erforderlich. Muss einer der unterstützten Datenquellentypen sein: adlsgen2 für Azure Data Lake Storage Gen2 azureblob für Azure Blob Storageazurefiles für Azure File Storageazuresql für Azure SQL Databaseazuretable for Azure Table Storagecosmosdb for the Azure Cosmos DB SQL-API, MongoDB-API, Gremlin-APImysql für Azure Database for MySQL |
credentials | Erforderlich. Enthält eine connectionString Eigenschaft, die angibt, wie eine Verbindung hergestellt werden soll. |
Container | Erforderlich. Gibt den Container, die Sammlung, die Tabelle oder die Sicht an, die die zu indizierenden Daten enthält. |
dataChangeDetectionPolicy | Optional. Gibt den Mechanismus an, der von der Datenplattform zum Identifizieren geänderter Datenelemente bereitgestellt wird. |
dataDeletionDetectionPolicy | Optional. Gibt an, wie die Datenplattform Daten löscht. |
encryptionKey | Optional. Wird für die zusätzliche Verschlüsselung von Datenquellenanmeldeinformationen über kundenseitig verwaltete Verschlüsselungsschlüssel (CMK) in Azure Key Vault verwendet. Verfügbar für abrechenbare Suchdienste, die am oder nach dem 01.01.2019 erstellt wurden. |
deaktiviert | Optional. Boolescher Wert, der angibt, ob der Indexer in einem deaktivierten Zustand erstellt wird, wodurch die sofortige Ausführung verhindert wird. Der Standardwert ist gleich „False“. |
Identität | Optional. Sie enthält einen userAssignedIdentity vom Typ #Microsoft.Azure.Search.DataUserAssignedIdentity und gibt die vom Benutzer zugewiesene verwaltete Identität der externen Ressource an. Diese Eigenschaft hängt credentials davon ab, dass die Verbindungszeichenfolge im richtigen Format (eine Ressourcen-ID) für Verbindungen mit verwalteten Identitäten für jeden Datenquellentyp vorhanden ist. Wenn die identity Eigenschaft NULL ist, wird die Verbindung mit einer Ressourcen-ID mithilfe der vom System verwalteten Eigenschaft hergestellt. Wenn diese Eigenschaft dem Typ #Microsoft.Azure.Search.DataNoneIdentity zugewiesen ist, wird jede explizite Identität gelöscht, die zuvor angegeben wurde. |
Antwort
Bei erfolgreicher Anforderung: „201 Erstellt“, wenn eine neue Datenquelle erstellt wurde; „204 Kein Inhalt“, wenn eine vorhandene Datenquelle aktualisiert wurde.
Beispiele
Beispiel: Azure-Rollen und eine systemseitig zugewiesene verwaltete Identität
Wenn Ihr Suchdienst über eine systemseitig zugewiesene verwaltete Identität und eine Rollenzuweisung verfügt, kann die Datenquellenverbindung die eindeutige Ressourcen-ID Ihres Speicherkontos sein.
{
"name": "azure-blob-ds",
"description": "a description of the blob data",
"type": "azureblob",
"subtype": null,
"credentials": {
"connectionString": "ResourceId=/subscriptions/[subscription ID]/resourceGroups/[resource group name]/providers/Microsoft.Storage/storageAccounts/[storage account name]/;"
},
"container": {
"name": "mycontainer"
},
"dataChangeDetectionPolicy": null,
"dataDeletionDetectionPolicy": null,
}
Beispiel: Azure-Rollen und eine benutzerseitig zugewiesene verwaltete Identität (Vorschau)
In diesem Beispiel wird eine azure AD-authentifizierte Verbindung für einen Suchdienst mit einer vom Benutzer zugewiesenen verwalteten Identität veranschaulicht.
{
"name": "azure-blob-ds",
"description": "a description of the blob data",
"type": "azureblob",
"subtype": null,
"credentials": {
"connectionString": "ResourceId=/subscriptions/[subscription ID]/resourceGroups/[resource group name]/providers/Microsoft.Storage/storageAccounts/[storage account name]/;"
},
"container": {
"name": "mycontainer"
},
"dataChangeDetectionPolicy": null,
"dataDeletionDetectionPolicy": null,
"identity": {
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"userAssignedIdentity": "/subscriptions/[subscription ID]/resourceGroups/[resource group name]/providers/Microsoft.ManagedIdentity/userAssignedIdentities/[user identity name]"
}
}
Beispiel: Azure SQL mit Änderungserkennung (Richtlinie zur Erkennung hoher Wasserzeichenänderungen)
{
"name" : "asqldatasource",
"description" : "a description",
"type" : "azuresql",
"credentials" : { "connectionString" : "Server=tcp:....database.windows.net,1433;Database=...;User ID=...;Password=...;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;" },
"container" : { "name" : "sometable" },
"dataChangeDetectionPolicy" : { "@odata.type" : "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", "highWaterMarkColumnName" : "RowVersion" }
}
Beispiel: Azure SQL mit Änderungserkennung (SQL Integrated Änderungsnachverfolgung Policy)
{
"name" : "asqldatasource",
"description" : "a description",
"type" : "azuresql",
"credentials" : { "connectionString" : "Server=tcp:....database.windows.net,1433;Database=...;User ID=...;Password=...;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;" },
"container" : { "name" : "sometable" },
"dataChangeDetectionPolicy" : { "@odata.type" : "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy" }
}
Beispiel: Azure SQL mit Änderungserkennung mit Löscherkennung
Denken Sie daran, dass die Eigenschaften für die Löscherkennung "softDeleteColumnName" und "softDeleteMarkerValue" sind.
{
"name" : "asqldatasource",
"description" : "a description",
"type" : "azuresql",
"credentials" : { "connectionString" : "Server=tcp:....database.windows.net,1433;Database=...;User ID=...;Password=...;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;" },
"container" : { "name" : "sometable" },
"dataDeletionDetectionPolicy" : { "@odata.type" : "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", "softDeleteColumnName" : "IsDeleted", "softDeleteMarkerValue" : "true" }
}
Beispiel: Datenquelle nur mit erforderlichen Eigenschaften
Optionale Eigenschaften im Zusammenhang mit der Änderungs- und Löscherkennung können weggelassen werden, wenn Sie die Datenquelle nur für eine einmalige Kopie der Daten verwenden möchten:
{
"name" : "asqldatasource",
"description" : "anything you want, or nothing at all",
"type" : "azuresql",
"credentials" : { "connectionString" : "Server=tcp:....database.windows.net,1433;Database=...;User ID=...;Password=...;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;" },
"container" : { "name" : "sometable" }
}
Beispiel: Verwenden der Option unveränderte oder redigierte Anmeldeinformationen
Wenn Sie die Datenquelle aktualisieren möchten, sind die Anmeldeinformationen nicht erforderlich. Die Werte <unchanged>
oder <redacted>
können anstelle des Verbindungszeichenfolge verwendet werden.
{
"name" : "adatasource",
"description": "a description",
"type": "azuresql",
"credentials": { "connectionString": "<unchanged>" },
"container" : { "name": "sometable" }
}
Beispiel: Verschlüsselungsschlüssel
Verschlüsselungsschlüssel sind kundenseitig verwaltete Schlüssel, die für die zusätzliche Verschlüsselung verwendet werden. Weitere Informationen finden Sie unter Verschlüsselung mithilfe von kundenseitig verwalteten Schlüsseln in Azure Key Vault.
{
"name" : "adatasource",
"description": "a description",
"type": "azuresql",
"credentials": { "connectionString": "<unchanged>" },
"container" : { "name": "sometable" },
"encryptionKey": (optional) {
"keyVaultKeyName": "Name of the Azure Key Vault key used for encryption",
"keyVaultKeyVersion": "Version of the Azure Key Vault key",
"keyVaultUri": "URI of Azure Key Vault, also referred to as DNS name, that provides the key. An example URI might be https://my-keyvault-name.vault.azure.net",
"accessCredentials": (optional, only if not using managed identity) {
"applicationId": "Azure Active Directory Application ID that was granted access permissions to your specified Azure Key Vault",
"applicationSecret": "Authentication key of the specified Azure AD application)"}
}
}
Beispiel: Verschlüsselungsschlüsseltresorverbindungen durch Suchdienste mit einer benutzerseitig zugewiesenen verwalteten Identität
In diesem Beispiel werden accessCredentials weggelassen. Für eine Ressource, der eine benutzerseitig zugewiesene verwaltete Identität zugewiesen ist, können Sie die Identität in encryptionKey angeben und den Schlüssel mithilfe dieser Identität und azure-Rollenzuweisungen abrufen.
{
"name" : "adatasource",
"description": "a description",
"type": "azuresql",
"credentials": { "connectionString": "<unchanged>" },
"container" : { "name": "sometable" },
"encryptionKey": (optional) {
"keyVaultKeyName": "Name of the Azure Key Vault key used for encryption",
"keyVaultKeyVersion": "Version of the Azure Key Vault key",
"keyVaultUri": "URI of Azure Key Vault, also referred to as DNS name, that provides the key. An example URI might be https://my-keyvault-name.vault.azure.net",
"identity": {
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/contoso-identity"
}
}
}
Definitionen
Link | BESCHREIBUNG |
---|---|
container | Gibt den Container, die Sammlung, die Tabelle oder die Sicht an, die die zu indizierenden Daten enthält. |
credentials | Enthält eine connectionString Eigenschaft, die angibt, wie ein Indexer eine Verbindung mit einer Azure-Ressource herstellt. |
dataChangeDetectionPolicy | Gibt den Mechanismus an, der von der Datenplattform zum Identifizieren geänderter Daten bereitgestellt wird. |
dataDeletionDetectionPolicy | Gibt den Mechanismus zum Erkennen gelöschter Daten an. |
encryptionKey | Konfiguriert eine Verbindung mit Azure Key Vault für die kundenseitig verwaltete Verschlüsselung. |
Container
Gibt den Container, die Sammlung, die Tabelle oder die Sicht an, die die zu indizierenden Daten enthält.
attribute | BESCHREIBUNG |
---|---|
name | Erforderlich. Gibt für Azure Cosmos DB die SQL-API-Auflistung an. Gibt für Azure Blob Storage den Speichercontainer an. Gibt für Azure SQL die Tabelle oder Sicht an. Sie können schemaqualifizierte Namen verwenden, z.B. [dbo].[mytable] . Gibt für Azure Table Storage den Namen der Tabelle an. |
Abfrage | Optional. Für Azure Cosmos DB können Sie eine Abfrage angeben, die ein beliebiges JSON-Dokumentlayout in ein flaches Schema aufflachen lässt, das Azure AI Search indizieren kann. Für Azure Blob Storage können Sie einen virtuellen Ordner innerhalb des Blobcontainers angeben. Für den Blobpfad mycontainer/documents/blob.pdf kann beispielsweise documents als virtueller Ordner verwendet werden. Für Azure Table Storage können Sie eine Abfrage angeben, die den Satz der zu importierenden Zeilen filtert. Für Azure SQL wird die Abfrage nicht unterstützt (verwenden Sie stattdessen Ansichten). |
Anmeldeinformationen
Enthält eine "connectionString"-Eigenschaft, die angibt, wie ein Indexer eine Verbindung mit einer Azure-Ressource herstellt.
attribute | Beschreibung |
---|---|
connectionString | Erforderlich. Gibt eine Verbindung mit einer Indexerdatenquelle an. Wenn Sie die Datenquellendefinition aktualisieren, ist die Verbindungszeichenfolge nicht erforderlich. Die Werte <unchanged> oder <redacted> können anstelle des tatsächlichen Verbindungszeichenfolge verwendet werden. Für Verbindungen, die mithilfe von Schlüsseln oder Anmeldeinformationen authentifiziert werden, sind diese Werte im Verbindungszeichenfolge sichtbar. Das Format der Verbindungszeichenfolge hängt vom Datenquellentyp ab: Für Azure SQL-Datenbank ist dies die übliche SQL Server Verbindungszeichenfolge. Wenn Sie Azure-Portal zum Abrufen des Verbindungszeichenfolge verwenden, wählen Sie die ADO.NET connection string Option aus. Für Azure Cosmos DB muss die Verbindungszeichenfolge das folgende Format aufweisen: "AccountEndpoint=https://[your account name].documents.azure.com;AccountKey=[your account key];Database=[your database id]" . Alle Werte sind erforderlich. Informationen zu den Werten finden Sie im Azure-Portal. Wenn Sie eine verwaltete Identität zur Authentifizierung verwenden, können Sie Anmeldeinformationen für die Verbindung weglassen. |
Für Verbindungen, die mit einer verwalteten Identität authentifiziert werden, gibt der Verbindungszeichenfolge die Azure-Ressourcen-ID an (siehe diese Links für Verbindungszeichenfolge Format: Azure Storage, Cosmos DB,SQL-Datenbank).
Rollenzuweisungen, die auf die externe Datenquelle ausgerichtet sind, bestimmen, ob der Indexer eine Verbindung herstellen kann, und der Suchdienst muss für die Ausführung als vertrauenswürdiger Dienst in Azure Active Directory konfiguriert werden.
Wenn auch die Eigenschaft "identity" angegeben wird, wird die Verbindung mithilfe der vom Benutzer zugewiesenen verwalteten Identität des Suchdiensts hergestellt, die von der Eigenschaft "identity" bereitgestellt wird. Andernfalls wird die Verbindung über die vom System verwaltete Identität hergestellt, wenn "Identität" nicht angegeben oder NULL ist.
dataChangeDetectionPolicy
Gibt den Mechanismus an, der von der Datenplattform zum Identifizieren geänderter Daten bereitgestellt wird. Unterstützte Richtlinien hängen vom Typ der Datenquelle ab.
attribute | BESCHREIBUNG |
---|---|
dataChangeDetectionPolicy | Optional. Gültige Richtlinien umfassen HighWatermarkChangeDetectionPolicy oder SqlIntegratedChangeDetectionPolicy . HighWatermarkChangeDetectionPolicy hängt von einer vorhandenen Spalte oder Eigenschaft ab, die zusammen mit anderen Updates aktualisiert wird (alle Einfügungen führen zu einer Aktualisierung der Wasserzeichenspalte), und die Änderung des Werts ist höher. SqlIntegratedChangeDetectionPolicy wird verwendet, um auf die nativen Änderungserkennungsfeatures in SQL Server zu verweisen. Diese Richtlinie kann nur mit Tabellen verwendet werden. es kann nicht mit Ansichten verwendet werden. Sie müssen die Änderungsnachverfolgung für die verwendete Tabelle aktivieren, bevor Sie diese Richtlinie verwenden können. Anweisungen finden Sie unter Aktivieren und Deaktivieren der Änderungsnachverfolgung . |
highWaterMarkColumnName | Erforderlich für HighWatermarkChangeDetectionPolicy . Für Cosmos DB muss die Spalte eigenschaft sein _ts . Für Azure SQL wird eine indizierte rowversion Spalte empfohlen. Für Azure Storage ist die Änderungserkennung mit lastModified-Werten integriert, sodass keine Notwendigkeit besteht, die dataChangeDetectionPolicy festzulegen. |
dataDeletionDetectionPolicy
Gibt den Mechanismus an, der von der Datenplattform zum Identifizieren gelöschter Daten bereitgestellt wird. Unterstützte Richtlinien hängen vom Typ der Datenquelle ab.
attribute | BESCHREIBUNG |
---|---|
dataDeletionDetectionPolicy | Optional. Gültige Werte sind SoftDeleteColumnDeletionDetectionPolicy oder NativeBlobSoftDeleteDeletionDetectionPolicy (siehe vorläufiges natives Bloblöschen (Vorschau)). Derzeit istSoftDeleteColumnDeletionDetectionPolicy die einzige allgemein verfügbare Richtlinie, die gelöschte Elemente basierend auf dem Wert einer Spalte oder Eigenschaft des vorläufigen Löschens in der Datenquelle identifiziert. |
softDeleteColumnName" | Erforderlich. Der Name einer Spalte in Ihrer Datenquelle, die einen Wert bereitstellt, der das Löschen einer Zeile status angibt. Sie könnten beispielsweise eine Spalte mit dem Namen "IsDeleted" erstellen. Es werden nur Spalten unterstützt, die Zeichenfolgen-, Ganzzahl- oder boolesche Werte enthalten. |
softDeleteMarkerValue | Erforderlich. Der Wert der Spalte "Vorläufiges Löschen". Der Wert für softDeleteMarkerValue muss eine Zeichenfolge sein, selbst wenn die entsprechende Spalte Ganzzahlen oder boolesche Werte enthält. Wenn beispielsweise der Wert, der in Ihrer Datenquelle angezeigt wird, 1 ist, verwenden Sie "1" als softDeleteMarkerValue . Wenn der Indexer diesen Wert aus der Spalte vorläufiges Löschen liest, löscht er das entsprechende Suchdokument aus dem Suchindex. |
encryptionKey
Konfiguriert eine Verbindung mit Azure Key Vault für zusätzliche kundenseitig verwaltete Verschlüsselungsschlüssel (CMK). Die Verschlüsselung mit kundenseitig verwalteten Schlüsseln ist für kostenlose Dienste nicht verfügbar. Für abrechenbare Dienste ist sie nur für Suchdienste verfügbar, die am oder nach dem 01.01.2019 erstellt wurden.
Eine Verbindung mit dem Schlüsseltresor muss authentifiziert werden. Sie können zu diesem Zweck entweder "accessCredentials" oder eine verwaltete Identität verwenden.
Verwaltete Identitäten können systemseitig oder benutzerseitig (Vorschau) sein. Wenn der Suchdienst sowohl über eine systemseitig zugewiesene verwaltete Identität als auch über eine Rollenzuweisung verfügt, die Lesezugriff auf den Schlüsseltresor gewährt, können Sie sowohl "identity" als auch "accessCredentials" weglassen, und die Anforderung authentifiziert sich mithilfe der verwalteten Identität. Wenn der Suchdienst über eine benutzerseitig zugewiesene Identität und Rollenzuweisung verfügt, legen Sie die Eigenschaft "identity" auf die Ressourcen-ID dieser Identität fest.
attribute | BESCHREIBUNG |
---|---|
keyVaultKeyName | Erforderlich. Name des Azure Key Vault Schlüssels, der für die Verschlüsselung verwendet wird. |
keyVaultKeyVersion | Erforderlich. Version des Azure Key Vault-Schlüssels. |
keyVaultUri | Erforderlich. URI von Azure Key Vault (auch als DNS-Name bezeichnet), der den Schlüssel bereitstellt. Ein Beispiel-URI kann sein https://my-keyvault-name.vault.azure.net . |
accessCredentials | Lassen Sie weg, wenn Sie eine verwaltete Identität verwenden. Andernfalls die Eigenschaften von accessCredentials include applicationId (eine Azure Active Directory-Anwendungs-ID mit Zugriffsberechtigungen für Ihre angegebene Azure Key Vault) und applicationSecret (der Authentifizierungsschlüssel der angegebenen Azure AD-Anwendung). |
Identität | Optional, es sei denn, Sie verwenden eine benutzerseitig zugewiesene verwaltete Identität für die Suchdienstverbindung mit Azure Key Vault. Das Format ist "/subscriptions/[subscription ID]/resourceGroups/[resource group name]/providers/Microsoft.ManagedIdentity/userAssignedIdentities/[managed identity name]" . |