Server Keys - Create Or Update

Tworzy lub aktualizuje klucz serwera.

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

Parametry identyfikatora URI

Name In Required Type Description
keyName
path True
  • string

Nazwa klucza serwera do obsługi (zaktualizowana lub utworzona). Nazwa klucza musi być w formacie "vault_key_version". Jeśli na przykład parametr keyId to https://YourVaultName.vault.azure.net/keys/YourKeyName/YourKeyVersion, nazwa klucza serwera powinna być sformatowana jako: YourVaultName_YourKeyName_YourKeyVersion

resourceGroupName
path True
  • string

Nazwa grupy zasobów zawierającej zasób. Tę wartość można uzyskać z interfejsu API Resource Manager platformy Azure lub portalu.

serverName
path True
  • string

Nazwa serwera.

subscriptionId
path True
  • string

Identyfikator subskrypcji identyfikujący subskrypcję platformy Azure.

api-version
query True
  • string

Wersja interfejsu API do użycia dla żądania.

Treść żądania

Name Required Type Description
properties.serverKeyType True

Typ klucza serwera, taki jak "ServiceManaged", "AzureKeyVault".

properties.uri
  • string

Identyfikator URI klucza serwera. Jeśli parametr ServerKeyType to AzureKeyVault, wymagany jest identyfikator URI. Identyfikator URI usługi AKV musi być w tym formacie: "https://YourVaultName.vault.azure.net/keys/YourKeyName/YourKeyVersion"

Odpowiedzi

Name Type Description
200 OK

Pomyślnie zaktualizowano klucz serwera.

201 Created

Pomyślnie utworzono klucz serwera.

202 Accepted

Zaakceptowano

Other Status Codes

Odpowiedzi na błędy: ***

  • 400 InvalidKeyName — podano nieprawidłową wartość dla nazwy klucza serwera.

  • 400 InvalidKeyType — typ klucza serwera tworzenia nie jest obsługiwany.

  • 400 InvalidUpsertKeyType — klucze TDE zarządzane przez usługę są zarządzane przez usługę. Klucze TDE zarządzane przez usługę nie obsługują tworzenia ani aktualizowania przez użytkownika.

  • 400 InvalidKeyUpsertRequest — żądanie klucza serwera tworzenia nie istnieje lub nie ma obiektu właściwości.

  • 400 SecurityAdalPrincipalCertExpiredError — nie można ukończyć operacji, ponieważ certyfikat główny usługi Azure Key Vault wygasł.

  • 400 AkvHostNotResolvingFromNode — host AKV "{0}" nie jest rozpoznawany z programu SQL na serwerze "{1}".

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel — podany identyfikator URI Key Vault jest nieprawidłowy.

  • 400 KeyMaterialNotFoundOnRemoteServer — serwer zdalny nie ma dostępu do materiału klucza używanego jako funkcja ochrony TDE.

  • 400 AzureKeyVaultRsaKeyNotSupported — podany magazyn kluczy używa nieobsługiwanego rozmiaru klucza RSA lub typu klucza. Obsługiwany rozmiar klucza RSA to 2048 lub 3072, a typ klucza to RSA lub RSA-HSM.

  • 400 AzureKeyVaultKeyDisabled — nie można ukończyć operacji na serwerze, ponieważ klucz usługi Azure Key Vault jest wyłączony.

  • 400 AzureKeyVaultInvalidExpirationDate — nie można ukończyć operacji, ponieważ data wygaśnięcia klucza Key Vault platformy Azure jest nieprawidłowa.

  • 400 SameKeyUriNotFoundOnRemoteServer — serwer pomocniczy nie ma materiału klucza z tego samego magazynu kluczy co ochrona szyfrowania serwera podstawowego z włączonym automatycznym obracaniem klucza.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty — nie można ukończyć operacji, ponieważ identyfikator URI usługi Azure Key Vault ma wartość null lub jest pusty.

  • 400 SameKeyMaterialNotFoundOnRemoteServer — serwer pomocniczy nie ma klucza ochrony szyfrowania serwera podstawowego.

  • 400 PerDatabaseCMKRestoreNotSupported — przywracanie bazy danych nie jest obsługiwane, gdy klucz cmK na poziomie bazy danych jest skonfigurowany w wersji zapoznawczej.

  • 400 AzureKeyVaultNoServerIdentity — tożsamość serwera nie jest poprawnie skonfigurowana.

  • 400 PerDatabaseCMKHSNotSupported — klucz CMK na poziomie bazy danych w wersji zapoznawczej nie jest obsługiwany w wersji hiperskala.

  • 400 AzureKeyVaultInvalidUri — nieprawidłowa odpowiedź z usługi Azure Key Vault. Użyj prawidłowego identyfikatora URI usługi Azure Key Vault.

  • 400 AzureKeyVaultMissingPermissions — na serwerze brakuje wymaganych uprawnień w usłudze Azure Key Vault.

  • 400 UmiMissingAkvPermissions — PrimaryUserAssignedIdentityId podana przez użytkownika nie ma dostępu do identyfikatora KeyId

  • 400 AkvEndpointNotReachableFromNode — punkt końcowy AKV "{0}" nie jest osiągalny z programu SQL na serwerze "{1}".

  • 400 SecurityAzureKeyVaultInvalidKeyName — nie można ukończyć operacji z powodu nieprawidłowej nazwy klucza serwera.

  • 400 AdalGenericError — nie można ukończyć operacji, ponieważ wystąpił błąd usługi Azure Active Directory.

  • 400 AdalServicePrincipalNotFound — nie można ukończyć operacji, ponieważ napotkano błąd jednostki usługi biblioteki Azure Active Directory.

  • 400 AzureKeyVaultMalformedVaultUri — podany identyfikator URI Key Vault jest nieprawidłowy.

  • 400 SecurityAzureKeyVaultGeoChainError — tworzenie pomocniczego (procesu znanego jako łańcuch) nie jest obsługiwane podczas włączania funkcji Transparent Data Encryption przy użyciu usługi Azure Key Vault (BYOK).

  • 400 PerDatabaseCMKDWNotSupported — klucz CMK na poziomie bazy danych w wersji zapoznawczej nie jest obsługiwany dla wersji Datawarehouse.

  • 400 SecurityAdalPrincipalCertExpiredError — nie można ukończyć operacji, ponieważ certyfikat główny usługi Azure Key Vault wygasł.

  • 400 AkvHostNotResolvingFromNode — host AKV "{0}" nie jest rozpoznawany z programu SQL na serwerze "{1}".

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel — podany identyfikator URI Key Vault jest nieprawidłowy.

  • 400 KeyMaterialNotFoundOnRemoteServer — serwer zdalny nie ma dostępu do materiału klucza używanego jako funkcja ochrony TDE.

  • 400 AzureKeyVaultRsaKeyNotSupported — podany magazyn kluczy używa nieobsługiwanego rozmiaru klucza RSA lub typu klucza. Obsługiwany rozmiar klucza RSA to 2048 lub 3072, a typ klucza to RSA lub RSA-HSM.

  • 400 AzureKeyVaultKeyDisabled — nie można ukończyć operacji na serwerze, ponieważ klucz usługi Azure Key Vault jest wyłączony.

  • 400 AzureKeyVaultInvalidExpirationDate — nie można ukończyć operacji, ponieważ data wygaśnięcia klucza Key Vault platformy Azure jest nieprawidłowa.

  • 400 SameKeyUriNotFoundOnRemoteServer — serwer pomocniczy nie ma materiału klucza z tego samego magazynu kluczy co ochrona szyfrowania serwera podstawowego z włączonym automatycznym obracaniem klucza.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty — nie można ukończyć operacji, ponieważ identyfikator URI usługi Azure Key Vault ma wartość null lub jest pusty.

  • 400 SameKeyMaterialNotFoundOnRemoteServer — serwer pomocniczy nie ma klucza ochrony szyfrowania serwera podstawowego.

  • 400 PerDatabaseCMKRestoreNotSupported — przywracanie bazy danych nie jest obsługiwane, gdy klucz cmK na poziomie bazy danych jest skonfigurowany w wersji zapoznawczej.

  • 400 AzureKeyVaultNoServerIdentity — tożsamość serwera nie jest poprawnie skonfigurowana.

  • 400 PerDatabaseCMKHSNotSupported — klucz CMK na poziomie bazy danych w wersji zapoznawczej nie jest obsługiwany w wersji hiperskala.

  • 400 AzureKeyVaultInvalidUri — nieprawidłowa odpowiedź z usługi Azure Key Vault. Użyj prawidłowego identyfikatora URI usługi Azure Key Vault.

  • 400 AzureKeyVaultMissingPermissions — na serwerze brakuje wymaganych uprawnień w usłudze Azure Key Vault.

  • 400 UmiMissingAkvPermissions — PrimaryUserAssignedIdentityId podana przez użytkownika nie ma dostępu do identyfikatora KeyId

  • 400 AkvEndpointNotReachableFromNode — punkt końcowy AKV "{0}" nie jest osiągalny z programu SQL na serwerze "{1}".

  • 400 SecurityAzureKeyVaultInvalidKeyName — nie można ukończyć operacji z powodu nieprawidłowej nazwy klucza serwera.

  • 400 AdalGenericError — nie można ukończyć operacji, ponieważ wystąpił błąd usługi Azure Active Directory.

  • 400 AdalServicePrincipalNotFound — nie można ukończyć operacji, ponieważ napotkano błąd jednostki usługi biblioteki Azure Active Directory.

  • 400 AzureKeyVaultMalformedVaultUri — podany identyfikator URI Key Vault jest nieprawidłowy.

  • 400 SecurityAzureKeyVaultGeoChainError — tworzenie pomocniczego (procesu znanego jako łańcuch) nie jest obsługiwane podczas włączania funkcji Transparent Data Encryption przy użyciu usługi Azure Key Vault (BYOK).

  • 400 PerDatabaseCMKDWNotSupported — klucz CMK na poziomie bazy danych w wersji zapoznawczej nie jest obsługiwany dla wersji Datawarehouse.

  • 404 SubscriptionDoesNotHaveServer — nie znaleziono żądanego serwera

  • 404 ServerNotInSubscriptionResourceGroup — określony serwer nie istnieje w określonej grupie zasobów i subskrypcji.

  • 404 ResourceNotFound — żądany zasób nie został znaleziony.

  • 404 OperationIdNotFound — operacja o identyfikatorze nie istnieje.

  • 409 ServerKeyNameAlreadyExists — klucz serwera już istnieje na serwerze.

  • 409 ServerKeyUriAlreadyExists — identyfikator URI klucza serwera już istnieje na serwerze.

  • 409 ServerKeyDoesNotExists — klucz serwera nie istnieje.

  • 409 AzureKeyVaultKeyNameNotFound — nie można ukończyć operacji, ponieważ nazwa klucza Key Vault platformy Azure nie istnieje.

  • 409 AzureKeyVaultKeyInUse — klucz jest obecnie używany przez serwer.

  • 409 ServerKeyNameAlreadyExists — klucz serwera już istnieje na serwerze.

  • 409 ServerKeyUriAlreadyExists — identyfikator URI klucza serwera już istnieje na serwerze.

  • 409 ServerKeyDoesNotExists — klucz serwera nie istnieje.

  • 409 AzureKeyVaultKeyNameNotFound — nie można ukończyć operacji, ponieważ nazwa klucza Key Vault platformy Azure nie istnieje.

  • 409 AzureKeyVaultKeyInUse — klucz jest obecnie używany przez serwer.

  • 409 OperationCancelled — operacja została anulowana przez użytkownika.

  • 409 OperationInterrupted — nie można ukończyć operacji na zasobie, ponieważ została przerwana przez inną operację na tym samym zasobie.

  • 429 SubscriptionTooManyCreateUpdateRequests — żądania wykraczające poza maksymalne żądania, które mogą być przetwarzane przez dostępne zasoby.

  • 429 SubscriptionTooManyRequests — żądania wykraczające poza maksymalne żądania, które mogą być przetwarzane przez dostępne zasoby.

  • 500 OperationTimedOut — upłynął limit czasu operacji i został automatycznie wycofany. Ponów próbę wykonania operacji.

  • 503 AzureKeyVaultConnectionFailed — nie można ukończyć operacji na serwerze, ponieważ próby nawiązania połączenia z platformą Azure Key Vault zakończyły się niepowodzeniem

  • 503 AzureKeyVaultGenericConnectionError — nie można ukończyć operacji, ponieważ wystąpił błąd podczas próby pobrania Key Vault informacji .

  • 503 AzureKeyVaultConnectionFailed — nie można ukończyć operacji na serwerze, ponieważ próby nawiązania połączenia z platformą Azure Key Vault zakończyły się niepowodzeniem

  • 503 AzureKeyVaultGenericConnectionError — nie można ukończyć operacji, ponieważ wystąpił błąd podczas próby pobrania Key Vault informacji .

  • 503 TooManyRequests — żądania wykraczające poza maksymalne żądania, które mogą być przetwarzane przez dostępne zasoby.

Przykłady

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

Definicje

ServerKey

Klucz serwera.

ServerKeyType

Typ klucza serwera, taki jak "ServiceManaged", "AzureKeyVault".

ServerKey

Klucz serwera.

Name Type Description
id
  • string

Identyfikator zasobu.

kind
  • string

Rodzaj ochrony szyfrowania. Są to metadane używane w środowisku Azure Portal.

location
  • string

Lokalizacja zasobu.

name
  • string

Nazwa zasobu.

properties.autoRotationEnabled
  • boolean

Flaga automatycznego obrotu klucza. Prawda lub fałsz.

properties.creationDate
  • string

Data utworzenia klucza serwera.

properties.serverKeyType

Typ klucza serwera, taki jak "ServiceManaged", "AzureKeyVault".

properties.subregion
  • string

Podregion klucza serwera.

properties.thumbprint
  • string

Odcisk palca klucza serwera.

properties.uri
  • string

Identyfikator URI klucza serwera. Jeśli parametr ServerKeyType to AzureKeyVault, wymagany jest identyfikator URI. Identyfikator URI usługi AKV musi być w tym formacie: "https://YourVaultName.vault.azure.net/keys/YourKeyName/YourKeyVersion"

type
  • string

Typ zasobu.

ServerKeyType

Typ klucza serwera, taki jak "ServiceManaged", "AzureKeyVault".

Name Type Description
AzureKeyVault
  • string
ServiceManaged
  • string