Data Sources - Create
Erstellt eine neue Datenquelle.
POST {endpoint}/datasources?api-version=2023-11-01
URI-Parameter
Name | In | Erforderlich | Typ | Beschreibung |
---|---|---|---|---|
endpoint
|
path | True |
string |
Die Endpunkt-URL des Suchdiensts. |
api-version
|
query | True |
string |
Client-API-Version. |
Anforderungsheader
Name | Erforderlich | Typ | Beschreibung |
---|---|---|---|
x-ms-client-request-id |
string uuid |
Die Tracking-ID, die mit der Anforderung gesendet wurde, beim Debuggen zu helfen. |
Anforderungstext
Name | Erforderlich | Typ | Beschreibung |
---|---|---|---|
container | True |
Der Datencontainer für die Datenquelle. |
|
credentials | True |
Anmeldeinformationen für die Datenquelle. |
|
name | True |
string |
Der Name der Datenquelle. |
type | True |
Der Typ der Datenquelle. |
|
@odata.etag |
string |
Das ETag der Datenquelle. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Die Datenänderungserkennungsrichtlinie für die Datenquelle. |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Die Datenlöscherkennungsrichtlinie für die Datenquelle. |
|
description |
string |
Die Beschreibung der Datenquelle. |
|
encryptionKey |
Eine Beschreibung eines Verschlüsselungsschlüssels, den Sie in Azure Key Vault erstellen. Dieser Schlüssel wird verwendet, um eine zusätzliche Ebene der Verschlüsselung ruhender Daten für Ihre Datenquellendefinition bereitzustellen, wenn Sie die volle Sicherheit haben möchten, dass niemand, auch nicht Microsoft, Ihre Datenquellendefinition entschlüsseln kann. Nachdem Sie ihre Datenquellendefinition verschlüsselt haben, bleibt sie immer verschlüsselt. Der Suchdienst ignoriert Versuche, diese Eigenschaft auf NULL festzulegen. Sie können diese Eigenschaft bei Bedarf ändern, wenn Sie Ihren Verschlüsselungsschlüssel rotieren möchten. Ihre Datenquellendefinition bleibt davon unberührt. Die Verschlüsselung mit kundenseitig verwalteten Schlüsseln ist für kostenlose Suchdienste nicht verfügbar und nur für kostenpflichtige Dienste verfügbar, die am oder nach dem 1. Januar 2019 erstellt wurden. |
Antworten
Name | Typ | Beschreibung |
---|---|---|
201 Created | ||
Other Status Codes |
Fehlerantwort. |
Beispiele
SearchServiceCreateDataSource
Sample Request
POST https://myservice.search.windows.net/datasources?api-version=2023-11-01
{
"name": "mydocdbdatasource",
"description": "My Cosmos DB data source.",
"type": "cosmosdb",
"credentials": {
"connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId"
},
"container": {
"name": "myDocDbCollectionId",
"query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts"
},
"dataChangeDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName": "_ts"
},
"dataDeletionDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
"softDeleteColumnName": "isDeleted",
"softDeleteMarkerValue": "true"
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": "<applicationSecret>"
}
}
}
Sample Response
{
"name": "mydocdbdatasource",
"description": "My Cosmos DB data source.",
"type": "cosmosdb",
"credentials": {
"connectionString": null
},
"container": {
"name": "myDocDbCollectionId",
"query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts"
},
"dataChangeDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName": "_ts"
},
"dataDeletionDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
"softDeleteColumnName": "isDeleted",
"softDeleteMarkerValue": "true"
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": null
}
}
}
Definitionen
Name | Beschreibung |
---|---|
Azure |
Anmeldeinformationen einer registrierten Anwendung, die für Ihren Suchdienst erstellt wurde und für den authentifizierten Zugriff auf die in Azure Key Vault gespeicherten Verschlüsselungsschlüssel verwendet wird. |
Data |
Stellt die Anmeldeinformationen dar, mit denen die Verbindung zu einer Datenquelle hergestellt werden kann. |
High |
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen basierend auf dem Wert einer Spalte mit hohem Wasserzeichen erfasst. |
Search |
Beschreibt eine Fehlerbedingung für die API. |
Search |
Stellt Informationen zur Entität (z. B. Azure SQL Tabelle oder CosmosDB-Auflistung) dar, die indiziert wird. |
Search |
Stellt eine Datenquellendefinition dar, die zum Konfigurieren eines Indexers verwendet werden kann. |
Search |
Definiert den Typ einer Datenquelle. |
Search |
Ein kundenseitig verwalteter Verschlüsselungsschlüssel in Azure Key Vault. Schlüssel, die Sie erstellen und verwalten, können zum Verschlüsseln oder Entschlüsseln ruhender Daten in Ihrem Suchdienst verwendet werden, z. B. Indizes und Synonymzuordnungen. |
Soft |
Definiert eine Richtlinie zur Erkennung von Datenlöschungen, die eine Strategie zum vorläufigen Löschen implementiert. Es bestimmt, ob ein Element basierend auf dem Wert einer angegebenen "vorläufigen Löschen"-Spalte gelöscht werden soll. |
Sql |
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen mithilfe des Integrierten Änderungsnachverfolgung-Features von Azure SQL-Datenbank erfasst. |
AzureActiveDirectoryApplicationCredentials
Anmeldeinformationen einer registrierten Anwendung, die für Ihren Suchdienst erstellt wurde und für den authentifizierten Zugriff auf die in Azure Key Vault gespeicherten Verschlüsselungsschlüssel verwendet wird.
Name | Typ | Beschreibung |
---|---|---|
applicationId |
string |
Eine AAD-Anwendungs-ID, der die erforderlichen Zugriffsberechtigungen für die Azure-Key Vault erteilt wurde, die beim Verschlüsseln Ihrer ruhenden Daten verwendet werden soll. Die Anwendungs-ID sollte nicht mit der Objekt-ID für Ihre AAD-Anwendung verwechselt werden. |
applicationSecret |
string |
Der Authentifizierungsschlüssel der angegebenen AAD-Anwendung. |
DataSourceCredentials
Stellt die Anmeldeinformationen dar, mit denen die Verbindung zu einer Datenquelle hergestellt werden kann.
Name | Typ | Beschreibung |
---|---|---|
connectionString |
string |
Der Verbindungszeichenfolge für die Datenquelle. Legen Sie (mit Klammern) fest |
HighWaterMarkChangeDetectionPolicy
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen basierend auf dem Wert einer Spalte mit hohem Wasserzeichen erfasst.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenänderungserkennungsrichtlinie angibt. |
highWaterMarkColumnName |
string |
Der Name der Hohen Wasserzeichensäule. |
SearchError
Beschreibt eine Fehlerbedingung für die API.
Name | Typ | Beschreibung |
---|---|---|
code |
string |
Einer der vom Server definierten Fehlercodes. |
details |
Ein Array von Details zu bestimmten Fehlern, die zu diesem gemeldeten Fehler geführt haben. |
|
message |
string |
Eine für Menschen lesbare Darstellung des Fehlers. |
SearchIndexerDataContainer
Stellt Informationen zur Entität (z. B. Azure SQL Tabelle oder CosmosDB-Auflistung) dar, die indiziert wird.
Name | Typ | Beschreibung |
---|---|---|
name |
string |
Der Name der Tabelle oder Sicht (für Azure SQL Datenquelle) oder Auflistung (für CosmosDB-Datenquelle), die indiziert wird. |
query |
string |
Eine Abfrage, die auf diesen Datencontainer angewendet wird. Die Syntax und Bedeutung dieses Parameters ist datenquellenspezifisch. Nicht von Azure SQL Datenquellen unterstützt. |
SearchIndexerDataSource
Stellt eine Datenquellendefinition dar, die zum Konfigurieren eines Indexers verwendet werden kann.
Name | Typ | Beschreibung |
---|---|---|
@odata.etag |
string |
Das ETag der Datenquelle. |
container |
Der Datencontainer für die Datenquelle. |
|
credentials |
Anmeldeinformationen für die Datenquelle. |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
Die Datenänderungserkennungsrichtlinie für die Datenquelle. |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
Die Datenlöscherkennungsrichtlinie für die Datenquelle. |
description |
string |
Die Beschreibung der Datenquelle. |
encryptionKey |
Eine Beschreibung eines Verschlüsselungsschlüssels, den Sie in Azure Key Vault erstellen. Dieser Schlüssel wird verwendet, um eine zusätzliche Ebene der Verschlüsselung ruhender Daten für Ihre Datenquellendefinition bereitzustellen, wenn Sie die volle Sicherheit haben möchten, dass niemand, auch nicht Microsoft, Ihre Datenquellendefinition entschlüsseln kann. Nachdem Sie ihre Datenquellendefinition verschlüsselt haben, bleibt sie immer verschlüsselt. Der Suchdienst ignoriert Versuche, diese Eigenschaft auf NULL festzulegen. Sie können diese Eigenschaft bei Bedarf ändern, wenn Sie Ihren Verschlüsselungsschlüssel rotieren möchten. Ihre Datenquellendefinition bleibt davon unberührt. Die Verschlüsselung mit kundenseitig verwalteten Schlüsseln ist für kostenlose Suchdienste nicht verfügbar und nur für kostenpflichtige Dienste verfügbar, die am oder nach dem 1. Januar 2019 erstellt wurden. |
|
name |
string |
Der Name der Datenquelle. |
type |
Der Typ der Datenquelle. |
SearchIndexerDataSourceType
Definiert den Typ einer Datenquelle.
Name | Typ | Beschreibung |
---|---|---|
adlsgen2 |
string |
Gibt eine ADLS Gen2-Datenquelle an. |
azureblob |
string |
Gibt eine Azure Blob-Datenquelle an. |
azuresql |
string |
Gibt eine Azure SQL-Datenquelle an. |
azuretable |
string |
Gibt eine Azure Table-Datenquelle an. |
cosmosdb |
string |
Gibt eine CosmosDB-Datenquelle an. |
mysql |
string |
Gibt eine MySql-Datenquelle an. |
SearchResourceEncryptionKey
Ein kundenseitig verwalteter Verschlüsselungsschlüssel in Azure Key Vault. Schlüssel, die Sie erstellen und verwalten, können zum Verschlüsseln oder Entschlüsseln ruhender Daten in Ihrem Suchdienst verwendet werden, z. B. Indizes und Synonymzuordnungen.
Name | Typ | Beschreibung |
---|---|---|
accessCredentials |
Optionale Azure Active Directory-Anmeldeinformationen, die für den Zugriff auf Ihre Azure Key Vault verwendet werden. Nicht erforderlich, wenn stattdessen eine verwaltete Identität verwendet wird. |
|
keyVaultKeyName |
string |
Der Name Ihres Azure Key Vault Schlüssel, der zum Verschlüsseln ruhender Daten verwendet werden soll. |
keyVaultKeyVersion |
string |
Die Version Ihres Azure Key Vault Schlüssels, der zum Verschlüsseln Ruhezustandsdaten verwendet werden soll. |
keyVaultUri |
string |
Der URI Ihres Azure Key Vault, auch als DNS-Name bezeichnet, der den Schlüssel enthält, der zum Verschlüsseln Ruhezustandsdaten verwendet werden soll. Ein Beispiel-URI kann sein |
SoftDeleteColumnDeletionDetectionPolicy
Definiert eine Richtlinie zur Erkennung von Datenlöschungen, die eine Strategie zum vorläufigen Löschen implementiert. Es bestimmt, ob ein Element basierend auf dem Wert einer angegebenen "vorläufigen Löschen"-Spalte gelöscht werden soll.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenlöschungserkennungsrichtlinie angibt. |
softDeleteColumnName |
string |
Der Name der Spalte, die für die Erkennung des vorläufigen Löschens verwendet werden soll. |
softDeleteMarkerValue |
string |
Der Markerwert, der ein Element als gelöscht identifiziert. |
SqlIntegratedChangeTrackingPolicy
Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen mithilfe des Integrierten Änderungsnachverfolgung-Features von Azure SQL-Datenbank erfasst.
Name | Typ | Beschreibung |
---|---|---|
@odata.type |
string:
#Microsoft. |
Ein URI-Fragment, das den Typ der Datenänderungserkennungsrichtlinie angibt. |