Dela via


Data Sources - Create

Skapar en ny datakälla.

POST {endpoint}/datasources?api-version=2024-03-01-Preview

URI-parametrar

Name I Obligatorisk Typ Description
endpoint
path True

string

Slutpunkts-URL:en för söktjänsten.

api-version
query True

string

Klient-API-version.

Begärandehuvud

Name Obligatorisk Typ Description
x-ms-client-request-id

string

uuid

Spårnings-ID:t som skickas med begäran för att hjälpa till med felsökning.

Begärandetext

Name Obligatorisk Typ Description
container True

SearchIndexerDataContainer

Datacontainern för datakällan.

credentials True

DataSourceCredentials

Autentiseringsuppgifter för datakällan.

name True

string

Namnet på datakällan.

type True

SearchIndexerDataSourceType

Datakällans typ.

@odata.etag

string

ETag för datakällan.

dataChangeDetectionPolicy DataChangeDetectionPolicy:
  • HighWaterMarkChangeDetectionPolicy
  • SqlIntegratedChangeTrackingPolicy

Principen för identifiering av dataändringar för datakällan.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:
  • SoftDeleteColumnDeletionDetectionPolicy
  • NativeBlobSoftDeleteDeletionDetectionPolicy

Principen för identifiering av databorttagning för datakällan.

description

string

Beskrivningen av datakällan.

encryptionKey

SearchResourceEncryptionKey

En beskrivning av en krypteringsnyckel som du skapar i Azure Key Vault. Den här nyckeln används för att ge en ytterligare nivå av kryptering i vila för din definition av datakällor när du vill ha fullständig säkerhet för att ingen, inte ens Microsoft, kan dekryptera datakälldefinitionen. När du har krypterat datakällans definition förblir den alltid krypterad. Söktjänsten ignorerar försök att ange den här egenskapen till null. Du kan ändra den här egenskapen efter behov om du vill rotera krypteringsnyckeln. Definitionen av datakällan påverkas inte. Kryptering med kundhanterade nycklar är inte tillgängligt för kostnadsfria söktjänster och är endast tillgängligt för betaltjänster som skapats den 1 januari 2019 eller senare.

identity SearchIndexerDataIdentity:
  • SearchIndexerDataNoneIdentity
  • SearchIndexerDataUserAssignedIdentity

En explicit hanterad identitet som ska användas för den här datakällan. Om inget anges och anslutningssträng är en hanterad identitet används den systemtilldelade hanterade identiteten. Om det inte anges förblir värdet oförändrat. Om "ingen" anges rensas värdet för den här egenskapen.

Svar

Name Typ Description
201 Created

SearchIndexerDataSource

Other Status Codes

ErrorResponse

Felsvar.

Exempel

SearchServiceCreateDataSource

Sample Request

POST https://myservice.search.windows.net/datasources?api-version=2024-03-01-Preview

{
  "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
    }
  }
}

Definitioner

Name Description
AzureActiveDirectoryApplicationCredentials

Autentiseringsuppgifter för ett registrerat program som skapats för din söktjänst och som används för autentiserad åtkomst till krypteringsnycklarna som lagras i Azure Key Vault.

DataSourceCredentials

Representerar autentiseringsuppgifter som kan användas för att ansluta till en datakälla.

ErrorAdditionalInfo

Ytterligare information om resurshanteringsfelet.

ErrorDetail

Felinformationen.

ErrorResponse

Felsvar

HighWaterMarkChangeDetectionPolicy

Definierar en princip för identifiering av dataändringar som samlar in ändringar baserat på värdet för en kolumn med högt vattenmärke.

NativeBlobSoftDeleteDeletionDetectionPolicy

Definierar en princip för identifiering av databorttagning som använder Azure Blob Storage inbyggda funktion för mjuk borttagning för identifiering av borttagning.

SearchIndexerDataContainer

Representerar information om entiteten (till exempel Azure SQL tabell eller CosmosDB-samling) som ska indexeras.

SearchIndexerDataNoneIdentity

Rensar identitetsegenskapen för en datakälla.

SearchIndexerDataSource

Representerar en datakällsdefinition som kan användas för att konfigurera en indexerare.

SearchIndexerDataSourceType

Definierar typen av datakälla.

SearchIndexerDataUserAssignedIdentity

Anger identiteten för en datakälla som ska användas.

SearchResourceEncryptionKey

En kundhanterad krypteringsnyckel i Azure Key Vault. Nycklar som du skapar och hanterar kan användas för att kryptera eller dekryptera vilande data, till exempel index och synonymmappningar.

SoftDeleteColumnDeletionDetectionPolicy

Definierar en princip för identifiering av databorttagning som implementerar en strategi för mjuk borttagning. Den avgör om ett objekt ska tas bort baserat på värdet för en angiven "mjuk borttagning"-kolumn.

SqlIntegratedChangeTrackingPolicy

Definierar en princip för identifiering av dataändringar som samlar in ändringar med hjälp av funktionen Integrerad Ändringsspårning i Azure SQL Database.

AzureActiveDirectoryApplicationCredentials

Autentiseringsuppgifter för ett registrerat program som skapats för din söktjänst och som används för autentiserad åtkomst till krypteringsnycklarna som lagras i Azure Key Vault.

Name Typ Description
applicationId

string

Ett AAD-program-ID som har beviljats nödvändiga åtkomstbehörigheter till Azure-Key Vault som ska användas vid kryptering av vilande data. Program-ID:t ska inte förväxlas med objekt-ID:t för ditt AAD-program.

applicationSecret

string

Autentiseringsnyckeln för det angivna AAD-programmet.

DataSourceCredentials

Representerar autentiseringsuppgifter som kan användas för att ansluta till en datakälla.

Name Typ Description
connectionString

string

Datakällans anslutningssträng. Ange till <unchanged> (med hakparenteser) om du inte vill att anslutningssträng ska uppdateras. Ange till <redacted> om du vill ta bort värdet för anslutningssträng från datakällan.

ErrorAdditionalInfo

Ytterligare information om resurshanteringsfelet.

Name Typ Description
info

object

Den ytterligare informationen.

type

string

Ytterligare informationstyp.

ErrorDetail

Felinformationen.

Name Typ Description
additionalInfo

ErrorAdditionalInfo[]

Ytterligare information om felet.

code

string

Felkoden.

details

ErrorDetail[]

Felinformationen.

message

string

Felmeddelandet.

target

string

Felmålet.

ErrorResponse

Felsvar

Name Typ Description
error

ErrorDetail

Felobjektet.

HighWaterMarkChangeDetectionPolicy

Definierar en princip för identifiering av dataändringar som samlar in ändringar baserat på värdet för en kolumn med högt vattenmärke.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy

Ett URI-fragment som anger typen av princip för identifiering av dataändringar.

highWaterMarkColumnName

string

Namnet på högvattenmärkeskolumnen.

NativeBlobSoftDeleteDeletionDetectionPolicy

Definierar en princip för identifiering av databorttagning som använder Azure Blob Storage inbyggda funktion för mjuk borttagning för identifiering av borttagning.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.NativeBlobSoftDeleteDeletionDetectionPolicy

Ett URI-fragment som anger typen av princip för identifiering av databorttagning.

SearchIndexerDataContainer

Representerar information om entiteten (till exempel Azure SQL tabell eller CosmosDB-samling) som ska indexeras.

Name Typ Description
name

string

Namnet på den tabell eller vy (för Azure SQL datakälla) eller samling (för CosmosDB-datakälla) som ska indexeras.

query

string

En fråga som tillämpas på den här datacontainern. Syntaxen och innebörden för den här parametern är datasource-specific. Stöds inte av Azure SQL datakällor.

SearchIndexerDataNoneIdentity

Rensar identitetsegenskapen för en datakälla.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.DataNoneIdentity

Ett URI-fragment som anger typen av identitet.

SearchIndexerDataSource

Representerar en datakällsdefinition som kan användas för att konfigurera en indexerare.

Name Typ Description
@odata.etag

string

ETag för datakällan.

container

SearchIndexerDataContainer

Datacontainern för datakällan.

credentials

DataSourceCredentials

Autentiseringsuppgifter för datakällan.

dataChangeDetectionPolicy DataChangeDetectionPolicy:
  • HighWaterMarkChangeDetectionPolicy
  • SqlIntegratedChangeTrackingPolicy

Principen för identifiering av dataändringar för datakällan.

dataDeletionDetectionPolicy DataDeletionDetectionPolicy:
  • NativeBlobSoftDeleteDeletionDetectionPolicy
  • SoftDeleteColumnDeletionDetectionPolicy

Principen för identifiering av databorttagning för datakällan.

description

string

Beskrivningen av datakällan.

encryptionKey

SearchResourceEncryptionKey

En beskrivning av en krypteringsnyckel som du skapar i Azure Key Vault. Den här nyckeln används för att ge en ytterligare nivå av kryptering i vila för din definition av datakällor när du vill ha fullständig säkerhet för att ingen, inte ens Microsoft, kan dekryptera datakälldefinitionen. När du har krypterat datakällans definition förblir den alltid krypterad. Söktjänsten ignorerar försök att ange den här egenskapen till null. Du kan ändra den här egenskapen efter behov om du vill rotera krypteringsnyckeln. Definitionen av datakällan påverkas inte. Kryptering med kundhanterade nycklar är inte tillgängligt för kostnadsfria söktjänster och är endast tillgängligt för betaltjänster som skapats den 1 januari 2019 eller senare.

identity SearchIndexerDataIdentity:
  • SearchIndexerDataNoneIdentity
  • SearchIndexerDataUserAssignedIdentity

En explicit hanterad identitet som ska användas för den här datakällan. Om inget anges och anslutningssträng är en hanterad identitet används den systemtilldelade hanterade identiteten. Om det inte anges förblir värdet oförändrat. Om "ingen" anges rensas värdet för den här egenskapen.

name

string

Namnet på datakällan.

type

SearchIndexerDataSourceType

Datakällans typ.

SearchIndexerDataSourceType

Definierar typen av datakälla.

Name Typ Description
adlsgen2

string

Anger en ADLS Gen2-datakälla.

azureblob

string

Anger en Azure Blob-datakälla.

azuresql

string

Anger en Azure SQL datakälla.

azuretable

string

Anger en Azure Table-datakälla.

cosmosdb

string

Anger en CosmosDB-datakälla.

mysql

string

Anger en MySql-datakälla.

SearchIndexerDataUserAssignedIdentity

Anger identiteten för en datakälla som ska användas.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.DataUserAssignedIdentity

Ett URI-fragment som anger typen av identitet.

userAssignedIdentity

string

Det fullständigt kvalificerade Azure-resurs-ID:t för en användartilldelad hanterad identitet, vanligtvis i formatet "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" som borde ha tilldelats söktjänsten.

SearchResourceEncryptionKey

En kundhanterad krypteringsnyckel i Azure Key Vault. Nycklar som du skapar och hanterar kan användas för att kryptera eller dekryptera vilande data, till exempel index och synonymmappningar.

Name Typ Description
accessCredentials

AzureActiveDirectoryApplicationCredentials

Valfria Azure Active Directory-autentiseringsuppgifter som används för att komma åt din Azure-Key Vault. Krävs inte om du använder hanterad identitet i stället.

identity SearchIndexerDataIdentity:
  • SearchIndexerDataNoneIdentity
  • SearchIndexerDataUserAssignedIdentity

En explicit hanterad identitet som ska användas för den här krypteringsnyckeln. Om det inte anges och egenskapen för autentiseringsuppgifter för åtkomst är null används den systemtilldelade hanterade identiteten. Om den explicita identiteten är ospecificerad vid uppdatering av resursen förblir den oförändrad. Om "ingen" anges rensas värdet för den här egenskapen.

keyVaultKeyName

string

Namnet på din Azure Key Vault nyckel som ska användas för att kryptera vilande data.

keyVaultKeyVersion

string

Versionen av din Azure Key Vault-nyckel som ska användas för att kryptera dina vilande data.

keyVaultUri

string

URI:n för din Azure-Key Vault, även kallad DNS-namn, som innehåller nyckeln som ska användas för att kryptera vilande data. Ett exempel på en URI kan vara https://my-keyvault-name.vault.azure.net.

SoftDeleteColumnDeletionDetectionPolicy

Definierar en princip för identifiering av databorttagning som implementerar en strategi för mjuk borttagning. Den avgör om ett objekt ska tas bort baserat på värdet för en angiven "mjuk borttagning"-kolumn.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy

Ett URI-fragment som anger typen av princip för identifiering av databorttagning.

softDeleteColumnName

string

Namnet på kolumnen som ska användas för identifiering av mjuk borttagning.

softDeleteMarkerValue

string

Det markörvärde som identifierar ett objekt som borttaget.

SqlIntegratedChangeTrackingPolicy

Definierar en princip för identifiering av dataändringar som samlar in ändringar med hjälp av funktionen Integrerad Ändringsspårning i Azure SQL Database.

Name Typ Description
@odata.type string:

#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy

Ett URI-fragment som anger typen av princip för identifiering av dataändringar.