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

Nombre En Requerido Tipo 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

Nombre Requerido Tipo Description
properties.serverKeyType True

ServerKeyType

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

Nombre Tipo Description
200 OK

ServerKey

Se actualizó correctamente la clave del servidor.

201 Created

ServerKey

Ha creado correctamente la clave del 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 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 TooManyRequests: solicitudes más allá del número máximo de solicitudes que se pueden procesar mediante recursos disponibles.

Ejemplos

Creates or updates a server key

Solicitud de ejemplo

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

Respuesta de muestra

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

Nombre Description
ServerKey

Una clave de servidor.

ServerKeyType

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

ServerKey

Una clave de servidor.

Nombre Tipo 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

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".

Nombre Tipo Description
AzureKeyVault

string

ServiceManaged

string