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

SearchIndexerDataContainer

Der Datencontainer für die Datenquelle.

credentials True

DataSourceCredentials

Anmeldeinformationen für die Datenquelle.

name True

string

Der Name der Datenquelle.

type True

SearchIndexerDataSourceType

Der Typ der Datenquelle.

@odata.etag

string

Das ETag der Datenquelle.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Die Datenänderungserkennungsrichtlinie für die Datenquelle.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

Die Datenlöscherkennungsrichtlinie für die Datenquelle.

description

string

Die Beschreibung der Datenquelle.

encryptionKey

SearchResourceEncryptionKey

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

SearchIndexerDataSource

Other Status Codes

SearchError

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
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.

DataSourceCredentials

Stellt die Anmeldeinformationen dar, mit denen die Verbindung zu einer Datenquelle hergestellt werden kann.

HighWaterMarkChangeDetectionPolicy

Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen basierend auf dem Wert einer Spalte mit hohem Wasserzeichen erfasst.

SearchError

Beschreibt eine Fehlerbedingung für die API.

SearchIndexerDataContainer

Stellt Informationen zur Entität (z. B. Azure SQL Tabelle oder CosmosDB-Auflistung) dar, die indiziert wird.

SearchIndexerDataSource

Stellt eine Datenquellendefinition dar, die zum Konfigurieren eines Indexers verwendet werden kann.

SearchIndexerDataSourceType

Definiert den Typ einer Datenquelle.

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.

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.

SqlIntegratedChangeTrackingPolicy

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 <unchanged> , wenn die Verbindungszeichenfolge nicht aktualisiert werden soll. Legen Sie auf fest<redacted>, wenn Sie den wert Verbindungszeichenfolge aus der Datenquelle entfernen möchten.

HighWaterMarkChangeDetectionPolicy

Definiert eine Datenänderungserkennungsrichtlinie, die Änderungen basierend auf dem Wert einer Spalte mit hohem Wasserzeichen erfasst.

Name Typ Beschreibung
@odata.type string:

#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy

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

SearchError[]

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

SearchIndexerDataContainer

Der Datencontainer für die Datenquelle.

credentials

DataSourceCredentials

Anmeldeinformationen für die Datenquelle.

dataChangeDetectionPolicy DataChangeDetectionPolicy:

Die Datenänderungserkennungsrichtlinie für die Datenquelle.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:

SoftDeleteColumnDeletionDetectionPolicy

Die Datenlöscherkennungsrichtlinie für die Datenquelle.

description

string

Die Beschreibung der Datenquelle.

encryptionKey

SearchResourceEncryptionKey

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

SearchIndexerDataSourceType

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

AzureActiveDirectoryApplicationCredentials

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 https://my-keyvault-name.vault.azure.net.

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.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy

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.Azure.Search.SqlIntegratedChangeTrackingPolicy

Ein URI-Fragment, das den Typ der Datenänderungserkennungsrichtlinie angibt.