Server Keys - Create Or Update

Crea o actualiza una clave de servidor.

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

Parámetros de identificador URI

Name In Required Type Description
keyName
path True
  • string

Nombre de la clave de servidor en la que se va a operar (actualizado o creado). El nombre de clave debe tener el formato "vault_key_version". Por ejemplo, si keyId es https://YourVaultName.vault.azure.net/keys/YourKeyName/YourKeyVersion, el nombre de la clave del servidor debe tener el formato siguiente: YourVaultName_YourKeyName_YourKeyVersion

resourceGroupName
path True
  • string

Nombre del grupo de recursos que contiene el recurso. Puede obtener este valor en la API del Administrador de recursos o el portal de Azure.

serverName
path True
  • string

El nombre del servidor.

subscriptionId
path True
  • string

El id. de suscripción que identifica una suscripción de Azure.

api-version
query True
  • string

La versión de API que se usará para la solicitud.

Cuerpo de la solicitud

Name Required Type Description
properties.serverKeyType True

El tipo de clave de servidor, como "ServiceManaged", "AzureKeyVault".

properties.uri
  • string

URI de la clave del servidor. Si ServerKeyType es AzureKeyVault, se requiere el URI. El URI de AKV debe tener este formato: 'https://YourVaultName.vault.azure.net/keys/YourKeyName/YourKeyVersion'

Respuestas

Name Type Description
200 OK

Se actualizó correctamente la clave del servidor.

201 Created

Se ha creado correctamente la clave de servidor.

202 Accepted

Aceptado

Other Status Codes

Respuestas de error: ***

  • 400 InvalidKeyName: se ha proporcionado un valor no válido para el nombre de clave del servidor.

  • 400 InvalidKeyType: no se admite el tipo de clave create server.

  • 400 InvalidUpsertKeyType: el servicio administra las claves TDE administradas por el servicio. Las claves de TDE administradas por el servicio no admiten la creación o actualización por parte del usuario.

  • 400 InvalidKeyUpsertRequest: la solicitud de creación de clave de servidor no existe o no tiene ningún objeto de propiedades.

  • 400 SecurityAdalPrincipalCertExpiredError: no se pudo completar la operación porque el certificado de entidad de seguridad de Azure Key Vault ha expirado.

  • 400 AkvHostNotResolvingFromNode: el host de AKV "{0}" no se puede resolver desde SQL, en el servidor "{1}".

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel: el URI de Key Vault proporcionado no es válido.

  • 400 KeyMaterialNotFoundOnRemoteServer: el servidor remoto no tiene acceso al material de clave utilizado como protector TDE.

  • 400 AzureKeyVaultRsaKeyNotSupported: el almacén de claves proporcionado usa el tamaño o el tipo de clave RSA no admitidos. El tamaño de clave RSA admitido es 2048 o 3072 y el tipo de clave es RSA o RSA-HSM.

  • 400 AzureKeyVaultKeyDisabled: no se pudo completar la operación en el servidor porque la clave de Azure Key Vault está deshabilitada.

  • 400 AzureKeyVaultInvalidExpirationDate: no se pudo completar la operación porque la fecha de expiración de la clave de Azure Key Vault no es válida.

  • 400 SameKeyUriNotFoundOnRemoteServer: el servidor secundario no tiene el material de clave del mismo almacén de claves que el protector de cifrado del servidor principal con la rotación automática de claves habilitada.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty: no se pudo completar la operación porque el URI de Azure Key Vault es nulo o está vacío.

  • 400 SameKeyMaterialNotFoundOnRemoteServer: el servidor secundario no tiene el material de clave del protector de cifrado del servidor principal.

  • 400 PerDatabaseCMKRestoreNotSupported: no se admite la restauración de la base de datos cuando cmK de nivel de base de datos está configurado en versión preliminar.

  • 400 AzureKeyVaultNoServerIdentity: la identidad del servidor no está configurada correctamente.

  • 400 PerDatabaseCMKHSNotSupported: CMK de nivel de base de datos en versión preliminar no se admite para la edición Hiperescala.

  • 400 AzureKeyVaultInvalidUri: respuesta no válida de Azure Key Vault. Use un URI de Azure Key Vault válido.

  • 400 AzureKeyVaultMissingPermissions: faltan permisos necesarios en azure Key Vault el servidor.

  • 400 UmiMissingAkvPermissions: PrimaryUserAssignedIdentityId proporcionado por el usuario no tiene acceso a KeyId proporcionado

  • 400 AkvEndpointNotReachableFromNode: el punto de conexión de AKV "{0}" no es accesible desde SQL, en el servidor "{1}".

  • 400 SecurityAzureKeyVaultInvalidKeyName: no se pudo completar la operación debido a un nombre de clave de servidor no válido.

  • 400 AdalGenericError: no se pudo completar la operación porque se encontró un error de Azure Active Directory.

  • 400 AdalServicePrincipalNotFound: no se pudo completar la operación porque no se encontró un error en la entidad de servicio de la biblioteca de Azure Active Directory.

  • 400 AzureKeyVaultMalformedVaultUri: el URI de Key Vault proporcionado no es válido.

  • 400 SecurityAzureKeyVaultGeoChainError: no se admite la creación de una base de datos secundaria (un proceso conocido como encadenamiento) al habilitar el cifrado de datos transparente mediante Azure Key Vault (BYOK).

  • 400 PerDatabaseCMKDWNotSupported: cmK de nivel de base de datos en versión preliminar no se admite para datawarehouse edition.

  • 400 SecurityAdalPrincipalCertExpiredError: no se pudo completar la operación porque el certificado de entidad de seguridad de Azure Key Vault ha expirado.

  • 400 AkvHostNotResolvingFromNode: el host de AKV "{0}" no se puede resolver desde SQL, en el servidor "{1}".

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel: el URI de Key Vault proporcionado no es válido.

  • 400 KeyMaterialNotFoundOnRemoteServer: el servidor remoto no tiene acceso al material de clave utilizado como protector TDE.

  • 400 AzureKeyVaultRsaKeyNotSupported: el almacén de claves proporcionado usa el tamaño o el tipo de clave RSA no admitidos. El tamaño de clave RSA admitido es 2048 o 3072 y el tipo de clave es RSA o RSA-HSM.

  • 400 AzureKeyVaultKeyDisabled: no se pudo completar la operación en el servidor porque la clave de Azure Key Vault está deshabilitada.

  • 400 AzureKeyVaultInvalidExpirationDate: no se pudo completar la operación porque la fecha de expiración de la clave de Azure Key Vault no es válida.

  • 400 SameKeyUriNotFoundOnRemoteServer: el servidor secundario no tiene el material de clave del mismo almacén de claves que el protector de cifrado del servidor principal con la rotación automática de claves habilitada.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty: no se pudo completar la operación porque el URI de Azure Key Vault es nulo o está vacío.

  • 400 SameKeyMaterialNotFoundOnRemoteServer: el servidor secundario no tiene el material de clave del protector de cifrado del servidor principal.

  • 400 PerDatabaseCMKRestoreNotSupported: no se admite la restauración de la base de datos cuando cmK de nivel de base de datos está configurado en versión preliminar.

  • 400 AzureKeyVaultNoServerIdentity: la identidad del servidor no está configurada correctamente.

  • 400 PerDatabaseCMKHSNotSupported: CMK de nivel de base de datos en versión preliminar no se admite para la edición Hiperescala.

  • 400 AzureKeyVaultInvalidUri: respuesta no válida de Azure Key Vault. Use un URI de Azure Key Vault válido.

  • 400 AzureKeyVaultMissingPermissions: faltan permisos necesarios en azure Key Vault el servidor.

  • 400 UmiMissingAkvPermissions: PrimaryUserAssignedIdentityId proporcionado por el usuario no tiene acceso a KeyId proporcionado

  • 400 AkvEndpointNotReachableFromNode: el punto de conexión de AKV "{0}" no es accesible desde SQL, en el servidor "{1}".

  • 400 SecurityAzureKeyVaultInvalidKeyName: no se pudo completar la operación debido a un nombre de clave de servidor no válido.

  • 400 AdalGenericError: no se pudo completar la operación porque se encontró un error de Azure Active Directory.

  • 400 AdalServicePrincipalNotFound: no se pudo completar la operación porque no se encontró un error en la entidad de servicio de la biblioteca de Azure Active Directory.

  • 400 AzureKeyVaultMalformedVaultUri: el URI de Key Vault proporcionado no es válido.

  • 400 SecurityAzureKeyVaultGeoChainError: no se admite la creación de una base de datos secundaria (un proceso conocido como encadenamiento) al habilitar el cifrado de datos transparente mediante Azure Key Vault (BYOK).

  • 400 PerDatabaseCMKDWNotSupported: cmK de nivel de base de datos en versión preliminar no se admite para datawarehouse edition.

  • 404 SubscriptionDoesNotHaveServer: no se encontró el servidor solicitado.

  • 404 ServerNotInSubscriptionResourceGroup: el servidor especificado no existe en el grupo de recursos y la suscripción especificados.

  • 404 ResourceNotFound: no se encontró el recurso solicitado.

  • 404 OperationIdNotFound: la operación con id. no existe.

  • 409 ServerKeyNameAlreadyExists: la clave de servidor ya existe en el servidor.

  • 409 ServerKeyUriAlreadyExists: el URI de la clave de servidor ya existe en el servidor.

  • 409 ServerKeyDoesNotExists: la clave del servidor no existe.

  • 409 AzureKeyVaultKeyNameNotFound: no se pudo completar la operación porque el nombre de clave de Azure Key Vault no existe.

  • 409 AzureKeyVaultKeyInUse: la clave está siendo utilizada actualmente por el servidor.

  • 409 ServerKeyNameAlreadyExists: la clave de servidor ya existe en el servidor.

  • 409 ServerKeyUriAlreadyExists: el URI de la clave de servidor ya existe en el servidor.

  • 409 ServerKeyDoesNotExists: la clave del servidor no existe.

  • 409 AzureKeyVaultKeyNameNotFound: no se pudo completar la operación porque el nombre de clave de Azure Key Vault no existe.

  • 409 AzureKeyVaultKeyInUse: la clave está siendo utilizada actualmente por el servidor.

  • 409 OperationCancelled: el usuario canceló la operación.

  • 409 OperationInterrupted: no se pudo completar la operación en el recurso porque se interrumpió por otra operación en el mismo recurso.

  • 429 SuscripciónTooManyCreateUpdateRequests: solicitudes más allá del número máximo de solicitudes que pueden procesar los recursos disponibles.

  • 429 SubscriptionTooManyRequests: solicitudes más allá del número máximo de solicitudes que pueden procesar los recursos disponibles.

  • 500 OperationTimedOut: se agota el tiempo de espera de la operación y se revierte automáticamente. Vuelva a intentar la operación y,

  • 503 AzureKeyVaultConnectionFailed: no se pudo completar la operación en el servidor porque se ha producido un error al intentar conectarse a Azure Key Vault

  • 503 AzureKeyVaultGenericConnectionError: no se pudo completar la operación porque se encontró un error al intentar recuperar Key Vault información .

  • 503 AzureKeyVaultConnectionFailed: no se pudo completar la operación en el servidor porque se han producido errores al intentar conectarse a Azure Key Vault

  • 503 AzureKeyVaultGenericConnectionError: no se pudo completar la operación porque se encontró un error al intentar recuperar Key Vault información .

  • 503 TooManyRequests: solicitudes más allá de las solicitudes máximas que los recursos disponibles pueden procesar.

Ejemplos

Creates or updates a server key

Sample Request

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

{
  "properties": {
    "serverKeyType": "AzureKeyVault",
    "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901",
  "name": "sqlcrudtest-4645",
  "type": "Microsoft.Sql/servers/keys",
  "location": "Japan East",
  "kind": "azurekeyvault",
  "properties": {
    "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD",
    "creationDate": "2020-11-15T00:00:00Z",
    "autoRotationEnabled": false
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/keys/someVault_someKey_01234567890123456789012345678901",
  "name": "sqlcrudtest-4645",
  "type": "Microsoft.Sql/servers/keys",
  "location": "Japan East",
  "kind": "azurekeyvault",
  "properties": {
    "thumbprint": "00112233445566778899AABBCCDDEEFFAABBCCDD",
    "creationDate": "2020-11-15T00:00:00Z",
    "autoRotationEnabled": false
  }
}

Definiciones

ServerKey

Una clave de servidor.

ServerKeyType

El tipo de clave de servidor, como "ServiceManaged", "AzureKeyVault".

ServerKey

Una clave de servidor.

Name Type Description
id
  • string

Identificador del recurso.

kind
  • string

Tipo de protector de cifrado. Estos son los metadatos que se usan para la experiencia de Azure Portal.

location
  • string

Ubicación del recurso

name
  • string

Nombre del recurso.

properties.autoRotationEnabled
  • boolean

Marca de participación de rotación automática de claves. Puede ser true o false.

properties.creationDate
  • string

Fecha de creación de la clave de servidor.

properties.serverKeyType

El tipo de clave de servidor, como "ServiceManaged", "AzureKeyVault".

properties.subregion
  • string

Subdivisión de la clave de servidor.

properties.thumbprint
  • string

Huella digital de la clave del servidor.

properties.uri
  • string

URI de la clave del servidor. Si ServerKeyType es AzureKeyVault, se requiere el URI. El URI de AKV debe tener este formato: 'https://YourVaultName.vault.azure.net/keys/YourKeyName/YourKeyVersion'

type
  • string

Tipo de recurso.

ServerKeyType

El tipo de clave de servidor, como "ServiceManaged", "AzureKeyVault".

Name Type Description
AzureKeyVault
  • string
ServiceManaged
  • string