Поделиться через


Encryption Protectors - Create Or Update

Обновления существующий предохранитель шифрования.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/encryptionProtector/current?api-version=2021-11-01

Параметры URI

Имя В Обязательно Тип Описание
encryptionProtectorName
path True

EncryptionProtectorName

Имя обновляемого предохранителя шифрования.

resourceGroupName
path True

string

Имя группы ресурсов, к которой относится ресурс. Это значение можно получить от API-интерфейса диспетчера ресурсов Azure или портала.

serverName
path True

string

Имя сервера.

subscriptionId
path True

string

Идентификатор подписки Azure.

api-version
query True

string

Версия API для использования в запросе.

Текст запроса

Имя Обязательно Тип Описание
properties.serverKeyType True

ServerKeyType

Тип предохранителя шифрования, например ServiceManaged, AzureKeyVault.

properties.autoRotationEnabled

boolean

Флаг автоматической смены ключей. Либо true, либо false.

properties.serverKeyName

string

Имя ключа сервера.

Ответы

Имя Тип Описание
200 OK

EncryptionProtector

Средство защиты шифрования успешно обновлено.

202 Accepted

Принято

Other Status Codes

Ответы об ошибках: ***

  • 400 InvalidKeyName — для имени ключа сервера было присвоено недопустимое значение.

  • 400 InvalidKeyType — тип ключа сервера создания не поддерживается.

  • 400 InvalidUpsertKeyType — управляемые службой ключи TDE управляются службой. Управляемые службой ключи TDE не поддерживают создание или обновление пользователем.

  • 400 InvalidKeyUpsertRequest — запрос на создание ключа сервера не существует или не имеет объекта свойств.

  • 400 InvalidEncryptionProtectorName — имя ключа защиты шифрования не поддерживается.

  • 400 SecurityAdalPrincipalCertExpiredError — не удалось завершить операцию, так как истек срок действия сертификата субъекта Key Vault Azure.

  • 400 AkvHostNotResolvingFromNode — узел AKV "{0}" не разрешается из SQL на сервере "{1}".

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel — указанный URI Key Vault является недопустимым.

  • 400 KeyMaterialNotFoundOnRemoteServer — удаленный сервер не имеет доступа к материалу ключа, используемому в качестве предохранителя TDE.

  • 400 AzureKeyVaultRsaKeyNotSupported — предоставленное хранилище ключей использует неподдерживаемый размер или тип ключа RSA. Поддерживаемый размер ключа RSA — 2048 или 3072, а тип ключа — RSA или RSA-HSM.

  • 400 AzureKeyVaultKeyDisabled — не удалось выполнить операцию на сервере, так как ключ Key Vault Azure отключен.

  • 400 AzureKeyVaultInvalidExpirationDate — не удалось выполнить операцию, так как недопустимая дата окончания срока действия ключа Key Vault Azure.

  • 400 SameKeyUriNotFoundOnRemoteServer — сервер-получатель не содержит материал ключа из того же хранилища ключей, что и предохранитель шифрования сервера-источника с включенной автоматической сменой ключей.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty — не удалось выполнить операцию, так как URI Key Vault Azure имеет значение NULL или пуст.

  • 400 SameKeyMaterialNotFoundOnRemoteServer — сервер-получатель не имеет материала ключа предохранителя шифрования основного сервера.

  • 400 PerDatabaseCMKRestoreNotSupported — восстановление базы данных не поддерживается, если cmK уровня базы данных настроен в предварительной версии.

  • 400 AzureKeyVaultNoServerIdentity — удостоверение сервера настроено неправильно.

  • 400 PerDatabaseCMKHSNotSupported — CMK уровня базы данных в предварительной версии не поддерживается для выпуска "Гипермасштабирование".

  • 400 AzureKeyVaultInvalidUri — недопустимый ответ от azure Key Vault. Используйте допустимый URI Key Vault Azure.

  • 400 AzureKeyVaultMissingPermissions — на сервере отсутствуют необходимые разрешения на Key Vault Azure.

  • 400 UmiMissingAkvPermissions — PrimaryUserAssignedId, предоставленный пользователем, не имеет доступа к предоставленному идентификатору KeyId

  • 400 AkvEndpointNotReachableFromNode — конечная точка AKV "{0}" недоступна из SQL на сервере "{1}".

  • 400 SecurityAzureKeyVaultInvalidKeyName — не удалось выполнить операцию из-за недопустимого имени ключа сервера.

  • 400 AdalGenericError — не удалось завершить операцию, так как обнаружена ошибка Azure Active Directory.

  • 400 AdalServicePrincipalNotFound — не удалось выполнить операцию, так как обнаружена ошибка субъект-служба библиотеки Azure Active Directory не найдена.

  • 400 AzureKeyVaultMalformedVaultUri — указанный URI Key Vault является недопустимым.

  • 400 SecurityAzureKeyVaultGeoChainError — создание вторичной базы данных(процесс, называемый цепочкой) не поддерживается при включении прозрачного шифрования данных с помощью Azure Key Vault (BYOK).

  • 400 PerDatabaseCMKDWNotSupported — CMK на уровне базы данных в предварительной версии не поддерживается для выпуска Datawarehouse.

  • 404 SubscriptionDoesNotHaveServer — запрошенный сервер не найден.

  • 404 ServerNotInSubscriptionResourceGroup — указанный сервер не существует в указанной группе ресурсов и подписке.

  • 404 ResourceNotFound — запрошенный ресурс не найден.

  • 404 ServerKeyNotFound. Запрашиваемый ключ сервера не найден в текущей подписке.

  • 404 OperationIdNotFound — операция с идентификатором не существует.

  • 409 EncryptionProtectorChangeInProgress — не удается обновить предохранитель ключа шифрования базы данных, пока изменение предохранителя уже выполняется

  • 409 ServerKeyNameAlreadyExists — ключ сервера уже существует на сервере.

  • 409 ServerKeyUriAlreadyExists — URI ключа сервера уже существует на сервере.

  • 409 ServerKeyDoesNotExists. Ключ сервера не существует.

  • 409 AzureKeyVaultKeyNameNotFound — не удалось выполнить операцию, так как имя ключа Key Vault Azure не существует.

  • 409 AzureKeyVaultKeyInUse — ключ в настоящее время используется сервером.

  • 409 OperationCancelled — операция была отменена пользователем.

  • 409 OperationInterrupted — не удалось завершить операцию с ресурсом, так как она была прервана другой операцией с тем же ресурсом.

  • 429 SubscriptionTooManyCreateUpdateRequests — запросы сверх максимального количества запросов, которые могут быть обработаны доступными ресурсами.

  • 429 SubscriptionTooManyRequests — запросы, превышающие максимальное количество запросов, которые могут быть обработаны доступными ресурсами.

  • 500 OperationTimedOut — время ожидания операции истекло и автоматически откатывается. Повторите операцию.

  • 503 AzureKeyVaultConnectionFailed — не удалось выполнить операцию на сервере, так как попытки подключения к Azure Key Vault завершились сбоем

  • 503 AzureKeyVaultGenericConnectionError — не удалось выполнить операцию, так как при попытке получить Key Vault сведения возникла ошибка .

  • 503 TooManyRequests — запросы сверх максимального числа запросов, которые могут быть обработаны доступными ресурсами.

Примеры

Update the encryption protector to key vault
Update the encryption protector to service managed

Update the encryption protector to key vault

Образец запроса

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current?api-version=2021-11-01

{
  "properties": {
    "serverKeyType": "AzureKeyVault",
    "serverKeyName": "someVault_someKey_01234567890123456789012345678901",
    "autoRotationEnabled": false
  }
}

Пример ответа

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current",
  "name": "current",
  "type": "Microsoft.Sql/servers/encryptionProtector",
  "location": "West US",
  "kind": "azurekeyvault",
  "properties": {
    "serverKeyName": "someVault_someKey_01234567890123456789012345678901",
    "serverKeyType": "AzureKeyVault",
    "autoRotationEnabled": false
  }
}

Update the encryption protector to service managed

Образец запроса

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current?api-version=2021-11-01

{
  "properties": {
    "serverKeyType": "ServiceManaged",
    "serverKeyName": "ServiceManaged"
  }
}

Пример ответа

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/encryptionProtector/current",
  "name": "current",
  "type": "Microsoft.Sql/servers/encryptionProtector",
  "location": "West US",
  "kind": "servicemanaged",
  "properties": {
    "serverKeyName": "ServiceManaged",
    "serverKeyType": "ServiceManaged"
  }
}

Определения

Имя Описание
EncryptionProtector

Предохранитель шифрования сервера.

EncryptionProtectorName

Имя обновляемого предохранителя шифрования.

ServerKeyType

Тип предохранителя шифрования, например ServiceManaged, AzureKeyVault.

EncryptionProtector

Предохранитель шифрования сервера.

Имя Тип Описание
id

string

Идентификатор ресурса.

kind

string

Тип предохранителя шифрования. Это метаданные, используемые для портал Azure взаимодействия.

location

string

Расположение ресурса.

name

string

Имя ресурса.

properties.autoRotationEnabled

boolean

Флаг автоматической смены ключей. Либо true, либо false.

properties.serverKeyName

string

Имя ключа сервера.

properties.serverKeyType

ServerKeyType

Тип предохранителя шифрования, например ServiceManaged, AzureKeyVault.

properties.subregion

string

Подобласть предохранителя шифрования.

properties.thumbprint

string

Отпечаток ключа сервера.

properties.uri

string

Универсальный код ресурса (URI) ключа сервера.

type

string

Тип ресурса.

EncryptionProtectorName

Имя обновляемого предохранителя шифрования.

Имя Тип Описание
current

string

ServerKeyType

Тип предохранителя шифрования, например ServiceManaged, AzureKeyVault.

Имя Тип Описание
AzureKeyVault

string

ServiceManaged

string