Share via


Encryption Protectors - Create Or Update

Updates an existing encryption protector.

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

URI Parameters

Name In Required Type Description
encryptionProtectorName
path True

EncryptionProtectorName

The name of the encryption protector to be retrieved.

resourceGroupName
path True

string

minLength: 1
maxLength: 90

The name of the resource group. The name is case insensitive.

serverName
path True

string

The name of the server.

subscriptionId
path True

string (uuid)

The ID of the target subscription. The value must be an UUID.

api-version
query True

string

minLength: 1

The API version to use for this operation.

Request Body

Name Required Type Description
properties.serverKeyType True

ServerKeyType

The encryption protector type like 'ServiceManaged', 'AzureKeyVault'.

properties.autoRotationEnabled

boolean

Key auto rotation opt-in flag. Either true or false.

properties.serverKeyName

string

The name of the server key.

Responses

Name Type Description
200 OK

EncryptionProtector

Resource 'EncryptionProtector' update operation succeeded

202 Accepted

Resource operation accepted.

Headers

  • Location: string
  • Retry-After: integer
Other Status Codes

ErrorResponse

An unexpected error response.

Security

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

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

Update the encryption protector to key vault

Sample request

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

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

Sample response

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

Update the encryption protector to key vault with versionless key

Sample request

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

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

Sample response

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

Update the encryption protector to service managed

Sample request

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

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

Sample response

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

Definitions

Name Description
createdByType

The type of identity that created the resource.

EncryptionProtector

The server encryption protector.

EncryptionProtectorName
ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Error response

ServerKeyType

The encryption protector type like 'ServiceManaged', 'AzureKeyVault'.

systemData

Metadata pertaining to creation and last modification of the resource.

createdByType

The type of identity that created the resource.

Value Description
User
Application
ManagedIdentity
Key

EncryptionProtector

The server encryption protector.

Name Type Description
id

string (arm-id)

Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"

kind

string

Kind of encryption protector. This is metadata used for the Azure portal experience.

location

string

Resource location.

name

string

The name of the resource

properties.autoRotationEnabled

boolean

Key auto rotation opt-in flag. Either true or false.

properties.keyVersion

string

The version of the server key being used as encryption protector

properties.serverKeyName

string

The name of the server key.

properties.serverKeyType

ServerKeyType

The encryption protector type like 'ServiceManaged', 'AzureKeyVault'.

properties.subregion

string

Subregion of the encryption protector.

properties.thumbprint

string

Thumbprint of the server key.

properties.uri

string

The URI of the server key.

systemData

systemData

Azure Resource Manager metadata containing createdBy and modifiedBy information.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

EncryptionProtectorName

Value Description
current

current

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

object

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ErrorResponse

Error response

Name Type Description
error

ErrorDetail

The error object.

ServerKeyType

The encryption protector type like 'ServiceManaged', 'AzureKeyVault'.

Value Description
ServiceManaged

ServiceManaged

AzureKeyVault

AzureKeyVault

systemData

Metadata pertaining to creation and last modification of the resource.

Name Type Description
createdAt

string (date-time)

The timestamp of resource creation (UTC).

createdBy

string

The identity that created the resource.

createdByType

createdByType

The type of identity that created the resource.

lastModifiedAt

string (date-time)

The timestamp of resource last modification (UTC)

lastModifiedBy

string

The identity that last modified the resource.

lastModifiedByType

createdByType

The type of identity that last modified the resource.