Data Sources - Create Or Update
新しいデータソースを作成するか、データソースが既に存在する場合は更新します。
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-11-01-preview
PUT {endpoint}/datasources('{dataSourceName}')?api-version=2024-11-01-preview&ignoreResetRequirements={ignoreResetRequirements}
URI パラメーター
名前 | / | 必須 | 型 | 説明 |
---|---|---|---|---|
data
|
path | True |
string |
作成または更新するデータソースの名前。 |
endpoint
|
path | True |
string |
検索サービスのエンドポイント URL。 |
api-version
|
query | True |
string |
クライアント API のバージョン。 |
ignore
|
query |
boolean |
キャッシュ リセットの要件を無視します。 |
要求ヘッダー
名前 | 必須 | 型 | 説明 |
---|---|---|---|
x-ms-client-request-id |
string uuid |
デバッグに役立つ要求と共に送信される追跡 ID。 |
|
If-Match |
string |
If-Match 条件を定義します。 この操作は、サーバー上の ETag がこの値と一致する場合にのみ実行されます。 |
|
If-None-Match |
string |
If-None-Match 条件を定義します。 この操作は、サーバー上の ETag がこの値と一致しない場合にのみ実行されます。 |
|
Prefer | True |
string |
HTTP PUT 要求の場合は、正常に作成/更新されたリソースを返すようにサービスに指示します。 |
要求本文
名前 | 必須 | 型 | 説明 |
---|---|---|---|
container | True |
データソースのデータ コンテナー。 |
|
credentials | True |
データソースの資格情報。 |
|
name | True |
string |
データソースの名前。 |
type | True |
データソースの型。 |
|
@odata.etag |
string |
データ ソースの ETag。 |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
データソースのデータ変更検出ポリシー。 |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
データソースのデータ削除検出ポリシー。 |
|
description |
string |
データソースの説明。 |
|
encryptionKey |
Azure Key Vault で作成する暗号化キーの説明。 このキーを使用して、データ ソース定義に保存時の暗号化レベルを追加します。これは、Microsoft 以外のユーザーがデータ ソース定義の暗号化を解除できないという完全な保証が必要な場合に使用されます。 データ ソース定義を暗号化すると、常に暗号化されたままになります。 検索サービスは、このプロパティを null に設定する試行を無視します。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。データソース定義は影響を受けません。 カスタマー マネージド キーを使用した暗号化は、無料の検索サービスでは使用できません。また、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
||
identity | SearchIndexerDataIdentity: |
このデータソースに使用する明示的なマネージド ID。 指定されず、接続文字列がマネージド ID の場合は、システム割り当てマネージド ID が使用されます。 指定しない場合、値は変更されません。 "none" が指定されている場合、このプロパティの値はクリアされます。 |
応答
名前 | 型 | 説明 |
---|---|---|
200 OK | ||
201 Created | ||
Other Status Codes |
エラー応答。 |
例
SearchServiceCreateOrUpdateDataSource
要求のサンプル
PUT https://previewexampleservice.search.windows.net/datasources('tempdatasource')?api-version=2024-11-01-preview&ignoreResetRequirements=
{
"name": "tempdatasource",
"description": "My Azure Blob data source.",
"type": "azureblob",
"credentials": {
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net "
},
"container": {
"name": "doc-extraction-skillset",
"query": "E2E_Dsat"
},
"dataChangeDetectionPolicy": {
"highWaterMarkColumnName": "metadata_storage_last_modified",
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy"
},
"dataDeletionDetectionPolicy": {
"softDeleteColumnName": "isDeleted",
"softDeleteMarkerValue": "true",
"@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy"
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": "<applicationSecret>"
}
}
}
応答のサンプル
{
"@odata.etag": "0x1234568AE7E58A1",
"name": "tempdatasource",
"description": "My Azure Blob data source.",
"type": "azureblob",
"credentials": {
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net "
},
"container": {
"name": "doc-extraction-skillset",
"query": "E2E_Dsat"
},
"dataChangeDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName": "metadata_storage_last_modified"
},
"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>"
}
}
}
{
"@odata.etag": "0x1234568AE7E58A1",
"name": "tempdatasource",
"description": "My Azure Blob data source.",
"type": "azureblob",
"credentials": {
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=myAccountKey;EndpointSuffix=core.windows.net "
},
"container": {
"name": "doc-extraction-skillset",
"query": "E2E_Dsat"
},
"dataChangeDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName": "metadata_storage_last_modified"
},
"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>"
}
}
}
定義
名前 | 説明 |
---|---|
Azure |
Azure Key Vault に格納されている暗号化キーへの認証済みアクセスに使用される、検索サービス用に作成された登録済みアプリケーションの資格情報。 |
Data |
データソースへの接続に使用できる資格情報を表します。 |
Error |
リソース管理エラーの追加情報。 |
Error |
エラーの詳細。 |
Error |
エラー応答 |
High |
高基準列の値に基づいて変更をキャプチャするデータ変更検出ポリシーを定義します。 |
Native |
Azure Blob Storage のネイティブの論理的な削除機能を使用して削除検出を行うデータ削除検出ポリシーを定義します。 |
Search |
インデックスが作成されるエンティティ (Azure SQL テーブルや CosmosDB コレクションなど) に関する情報を表します。 |
Search |
データソースの ID プロパティをクリアします。 |
Search |
インデクサーの構成に使用できるデータソース定義を表します。 |
Search |
データソースの型を定義します。 |
Search |
使用するデータソースの ID を指定します。 |
Search |
Azure Key Vault のカスタマー マネージド暗号化キー。 作成および管理するキーは、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除に使用できます。 |
Soft |
論理的な削除戦略を実装するデータ削除検出ポリシーを定義します。 指定された "論理的な削除" 列の値に基づいて、アイテムを削除するかどうかを決定します。 |
Sql |
Azure SQL Database の統合変更追跡機能を使用して変更をキャプチャするデータ変更検出ポリシーを定義します。 |
AzureActiveDirectoryApplicationCredentials
Azure Key Vault に格納されている暗号化キーへの認証済みアクセスに使用される、検索サービス用に作成された登録済みアプリケーションの資格情報。
名前 | 型 | 説明 |
---|---|---|
applicationId |
string |
保存データの暗号化時に使用される Azure Key Vault に対する必要なアクセス許可が付与された AAD アプリケーション ID。 アプリケーション ID は、AAD アプリケーションのオブジェクト ID と混同しないでください。 |
applicationSecret |
string |
指定した AAD アプリケーションの認証キー。 |
DataSourceCredentials
データソースへの接続に使用できる資格情報を表します。
名前 | 型 | 説明 |
---|---|---|
connectionString |
string |
データソースの接続文字列。 接続文字列を更新しない場合は、 |
ErrorAdditionalInfo
リソース管理エラーの追加情報。
名前 | 型 | 説明 |
---|---|---|
info |
object |
追加情報。 |
type |
string |
追加情報の種類。 |
ErrorDetail
エラーの詳細。
名前 | 型 | 説明 |
---|---|---|
additionalInfo |
エラーの追加情報。 |
|
code |
string |
エラー コード。 |
details |
エラーの詳細。 |
|
message |
string |
エラー メッセージ。 |
target |
string |
エラーターゲット。 |
ErrorResponse
エラー応答
名前 | 型 | 説明 |
---|---|---|
error |
エラー オブジェクト。 |
HighWaterMarkChangeDetectionPolicy
高基準列の値に基づいて変更をキャプチャするデータ変更検出ポリシーを定義します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ変更検出ポリシーの種類を指定する URI フラグメント。 |
highWaterMarkColumnName |
string |
高い基準値の列の名前。 |
NativeBlobSoftDeleteDeletionDetectionPolicy
Azure Blob Storage のネイティブの論理的な削除機能を使用して削除検出を行うデータ削除検出ポリシーを定義します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ削除検出ポリシーの種類を指定する URI フラグメント。 |
SearchIndexerDataContainer
インデックスが作成されるエンティティ (Azure SQL テーブルや CosmosDB コレクションなど) に関する情報を表します。
名前 | 型 | 説明 |
---|---|---|
name |
string |
インデックスが作成されるテーブルまたはビュー (Azure SQL データ ソースの場合) またはコレクション (CosmosDB データ ソースの場合) の名前。 |
query |
string |
このデータ コンテナーに適用されるクエリ。 このパラメーターの構文と意味はデータソース固有です。 Azure SQL データソースではサポートされていません。 |
SearchIndexerDataNoneIdentity
データソースの ID プロパティをクリアします。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
ID の種類を指定する URI フラグメント。 |
SearchIndexerDataSource
インデクサーの構成に使用できるデータソース定義を表します。
名前 | 型 | 説明 |
---|---|---|
@odata.etag |
string |
データ ソースの ETag。 |
container |
データソースのデータ コンテナー。 |
|
credentials |
データソースの資格情報。 |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
データソースのデータ変更検出ポリシー。 |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
データソースのデータ削除検出ポリシー。 |
description |
string |
データソースの説明。 |
encryptionKey |
Azure Key Vault で作成する暗号化キーの説明。 このキーを使用して、データ ソース定義に保存時の暗号化レベルを追加します。これは、Microsoft 以外のユーザーがデータ ソース定義の暗号化を解除できないという完全な保証が必要な場合に使用されます。 データ ソース定義を暗号化すると、常に暗号化されたままになります。 検索サービスは、このプロパティを null に設定する試行を無視します。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。データソース定義は影響を受けません。 カスタマー マネージド キーを使用した暗号化は、無料の検索サービスでは使用できません。また、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
|
identity | SearchIndexerDataIdentity: |
このデータソースに使用する明示的なマネージド ID。 指定されず、接続文字列がマネージド ID の場合は、システム割り当てマネージド ID が使用されます。 指定しない場合、値は変更されません。 "none" が指定されている場合、このプロパティの値はクリアされます。 |
name |
string |
データソースの名前。 |
type |
データソースの型。 |
SearchIndexerDataSourceType
データソースの型を定義します。
名前 | 型 | 説明 |
---|---|---|
adlsgen2 |
string |
ADLS Gen2 データソースを示します。 |
azureblob |
string |
Azure BLOB データソースを示します。 |
azuresql |
string |
Azure SQL データソースを示します。 |
azuretable |
string |
Azure Table データソースを示します。 |
cosmosdb |
string |
CosmosDB データソースを示します。 |
mysql |
string |
MySql データソースを示します。 |
onelake |
string |
Microsoft Fabric OneLake データソースを示します。 |
SearchIndexerDataUserAssignedIdentity
使用するデータソースの ID を指定します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
ID の種類を指定する URI フラグメント。 |
userAssignedIdentity |
string |
通常、ユーザー割り当てマネージド ID の完全修飾 Azure リソース ID は、検索サービスに割り当てられている必要がある "/subscriptions/12345678-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" の形式です。 |
SearchResourceEncryptionKey
Azure Key Vault のカスタマー マネージド暗号化キー。 作成および管理するキーは、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除に使用できます。
名前 | 型 | 説明 |
---|---|---|
accessCredentials |
Azure Key Vault へのアクセスに使用されるオプションの Azure Active Directory 資格情報。 代わりにマネージド ID を使用する場合は必要ありません。 |
|
identity | SearchIndexerDataIdentity: |
この暗号化キーに使用する明示的なマネージド ID。 指定されず、アクセス資格情報プロパティが null の場合は、システム割り当てマネージド ID が使用されます。 リソースの更新時に、明示的な ID が指定されていない場合、変更されません。 "none" が指定されている場合、このプロパティの値はクリアされます。 |
keyVaultKeyName |
string |
保存データの暗号化に使用する Azure Key Vault キーの名前。 |
keyVaultKeyVersion |
string |
保存データの暗号化に使用する Azure Key Vault キーのバージョン。 |
keyVaultUri |
string |
保存データの暗号化に使用するキーを含む Azure Key Vault の URI (DNS 名とも呼ばれます)。 URI の例は、 |
SoftDeleteColumnDeletionDetectionPolicy
論理的な削除戦略を実装するデータ削除検出ポリシーを定義します。 指定された "論理的な削除" 列の値に基づいて、アイテムを削除するかどうかを決定します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ削除検出ポリシーの種類を指定する URI フラグメント。 |
softDeleteColumnName |
string |
論理的な削除の検出に使用する列の名前。 |
softDeleteMarkerValue |
string |
アイテムを削除済みとして識別するマーカー値。 |
SqlIntegratedChangeTrackingPolicy
Azure SQL Database の統合変更追跡機能を使用して変更をキャプチャするデータ変更検出ポリシーを定義します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ変更検出ポリシーの種類を指定する URI フラグメント。 |