다음을 통해 공유


Transparent Data Encryptions - Create Or Update

논리 데이터베이스의 투명한 데이터 암호화 구성을 업데이트.

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

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
databaseName
path True

string

보안 경고 정책이 정의된 논리 데이터베이스의 이름입니다.

resourceGroupName
path True

string

리소스를 포함하는 리소스 그룹의 이름입니다. Azure 리소스 관리자 API 또는 포털에서 이 값을 가져올 수 있습니다.

serverName
path True

string

서버의 이름입니다.

subscriptionId
path True

string

Azure 구독을 식별하는 구독 ID입니다.

tdeName
path True

TransparentDataEncryptionName

투명한 데이터 암호화 구성의 이름입니다.

api-version
query True

string

요청에 사용할 API 버전입니다.

요청 본문

Name 필수 형식 Description
properties.state True

TransparentDataEncryptionState

투명한 데이터 암호화의 상태를 지정합니다.

응답

Name 형식 Description
200 OK

LogicalDatabaseTransparentDataEncryption

데이터베이스 투명한 데이터 암호화 상태를 업데이트했습니다.

201 Created

LogicalDatabaseTransparentDataEncryption

데이터베이스 투명한 데이터 암호화 상태를 만들었습니다.

202 Accepted

데이터베이스 투명 데이터 암호화 구성 만들기 또는 업데이트가 진행 중입니다.

Other Status Codes

오류 응답: ***

  • 400 SecurityAdalPrincipalCertExpiredError - Azure Key Vault 보안 주체 인증서가 만료되어 작업을 완료할 수 없습니다.

  • 400 AkvHostNotResolvingFromNode - AKV 호스트 ''는 서버 '{0}{1}'의 SQL에서 확인할 수 없습니다.

  • 400 SecurityInvalidAzureKeyVaultRecoveryLevel - 제공된 Key Vault URI가 잘못되었습니다.

  • 400 KeyMaterialNotFoundOnRemoteServer - 원격 서버는 TDE 보호기로 사용되는 키 자료에 액세스할 수 없습니다.

  • 400 AzureKeyVaultRsaKeyNotSupported - 제공된 키 자격 증명 모음은 지원되지 않는 RSA 키 크기 또는 키 형식을 사용합니다. 지원되는 RSA 키 크기는 2048 또는 3072이고 키 유형은 RSA 또는 RSA-HSM입니다.

  • 400 AzureKeyVaultKeyDisabled - Azure Key Vault 키가 비활성화되어 서버에서 작업을 완료할 수 없습니다.

  • 400 AzureKeyVaultInvalidExpirationDate - Azure Key Vault 키 만료 날짜가 잘못되어 작업을 완료할 수 없습니다.

  • 400 SameKeyUriNotFoundOnRemoteServer - 보조 서버에는 키 자동 회전이 사용하도록 설정된 주 서버의 암호화 보호기와 동일한 키 자격 증명 모음의 키 자료가 없습니다.

  • 400 SecurityAzureKeyVaultUrlNullOrEmpty - Azure Key Vault Uri가 null이거나 비어 있으므로 작업을 완료할 수 없습니다.

  • 400 SameKeyMaterialNotFoundOnRemoteServer - 보조 서버에 주 서버의 암호화 보호기의 키 자료가 없습니다.

  • 400 PerDatabaseCMKRestoreNotSupported - 데이터베이스 수준 CMK가 미리 보기로 구성된 경우 데이터베이스 복원이 지원되지 않습니다.

  • 400 AzureKeyVaultNoServerIdentity - 서버 ID가 올바르게 구성되지 않았습니다.

  • 400 PerDatabaseCMKHSNotSupported - 미리 보기의 데이터베이스 수준 CMK는 하이퍼스케일 버전에서 지원되지 않습니다.

  • 400 AzureKeyVaultInvalidUri - Azure Key Vault 잘못된 응답입니다. 유효한 Azure Key Vault URI를 사용하세요.

  • 400 AzureKeyVaultMissingPermissions - 서버에 Azure Key Vault 대한 필수 권한이 없습니다.

  • 400 UmiMissingAkvPermissions - 사용자가 제공한 PrimaryUserAssignedIdentityId가 제공된 KeyId에 액세스할 수 없습니다.

  • 400 AkvEndpointNotReachableFromNode - AKV 엔드포인트 ''는 서버 '{0}{1}'의 SQL에서 연결할 수 없습니다.

  • 400 SecurityAzureKeyVaultInvalidKeyName - 잘못된 서버 키 이름으로 인해 작업을 완료할 수 없습니다.

  • 400 AdalGenericError - Azure Active Directory 오류가 발생하여 작업을 완료할 수 없습니다.

  • 400 AdalServicePrincipalNotFound - Azure Active Directory 라이브러리 서비스 주체를 찾을 수 없음 오류가 발생하여 작업을 완료할 수 없습니다.

  • 400 AzureKeyVaultMalformedVaultUri - 제공된 Key Vault URI가 잘못되었습니다.

  • 400 SecurityAzureKeyVaultGeoChainError - BYOK(Azure Key Vault)를 사용하여 투명한 데이터 암호화를 사용하도록 설정할 때 보조 보조 데이터베이스(체인이라고 하는 프로세스)를 만드는 것은 지원되지 않습니다.

  • 400 PerDatabaseCMKDWNotSupported - 미리 보기의 데이터베이스 수준 CMK는 Datawarehouse 버전에서 지원되지 않습니다.

  • 400 ReadOnly - 읽기 전용이거나 읽기 전용 파일이 있거나 복구되지 않은 데이터베이스에서 데이터베이스 암호화를 사용하거나 수정할 수 없습니다.

  • 400 CanNotDropAlterOnMirror - 주 데이터베이스에서 투명한 데이터 암호화를 수정하세요.

  • 400 AttemptedEncryptionOnSystemDatabase - 시스템 데이터베이스를 암호화할 수 없습니다. 'master', 'model', 'tempdb', 'msdb' 또는 'resource' 데이터베이스에는 데이터베이스 암호화 작업을 수행할 수 없습니다.

  • 400 InvalidTransparentDataEncryptionUpdateRequest - 유효한 상태를 입력하세요. "사용" 또는 "사용 안 함"을 사용하세요.

  • 400 InvalidTransparentDataEncryptionName - 투명한 데이터 암호화 키 이름은 지원되지 않습니다.

  • 401 CanNotChangeReadOnlyDuringTdeScan - 암호화 전환이 진행되는 동안 파일 그룹 읽기 전용/읽기-쓰기 상태를 수정할 수 없습니다.

  • 409 ServerKeyNameAlreadyExists - 서버 키가 서버에 이미 있습니다.

  • 409 ServerKeyUriAlreadyExists - 서버 키 URI가 서버에 이미 있습니다.

  • 409 ServerKeyDoesNotExists - 서버 키가 없습니다.

  • 409 AzureKeyVaultKeyNameNotFound - Azure Key Vault 키 이름이 없으므로 작업을 완료할 수 없습니다.

  • 409 AzureKeyVaultKeyInUse - 현재 서버에서 키를 사용하고 있습니다.

  • 409 NeedsLogBackup - 로그 백업이 발생할 때까지 몇 분 정도 기다려 주세요.

  • 409 EncryptionInProgress - 암호화 검사가 진행되는 동안 암호화를 수정할 수 없습니다.

  • 409 KeyChangeInProgress - 암호화, 암호 해독 또는 키 변경 검사가 진행되는 동안 데이터베이스 암호화 키를 변경할 수 없습니다.

  • 409 NoBulkOperationLock - 데이터베이스에 잠금을 배치할 수 없어 CREATE/ALTER/DROP DATABASE ENCRYPTION KEY가 실패했습니다. 나중에 다시 시도하십시오.

  • 409 AltStateConflict - 데이터베이스 미러링 세션 또는 가용성 그룹에 관련되어 있으므로 데이터베이스에서 작업을 수행할 수 없습니다. 데이터베이스 미러링 세션 또는 가용성 그룹에 참여하는 데이터베이스에서는 일부 작업이 허용되지 않습니다.

  • 503 AzureKeyVaultConnectionFailed - Azure Key Vault 연결 시도가 실패했기 때문에 서버에서 작업을 완료할 수 없습니다.

  • 503 AzureKeyVaultGenericConnectionError - Key Vault 정보를 검색하려고 할 때 오류가 발생하여 작업을 완료할 수 없습니다.

  • 503 NoDekLock - 데이터베이스에 잠금을 배치할 수 없어 CREATE/ALTER/DROP DATABASE ENCRYPTION KEY가 실패했습니다. 나중에 다시 시도하십시오.

예제

Update a database's Transparent Data Encryption state with minimal parameters

샘플 요청

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securitytde-42-rg/providers/Microsoft.Sql/servers/securitytde-42/databases/testdb/transparentDataEncryption/current?api-version=2021-11-01

{
  "properties": {
    "state": "Enabled"
  }
}

샘플 응답

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securitytde-42-rg/providers/Microsoft.Sql/servers/securitytde-42/databases/testdb/transparentDataEncryption",
  "name": "current",
  "type": "Microsoft.Sql/servers/databases/transparentDataEncryption",
  "properties": {
    "state": "Enabled"
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securitytde-42-rg/providers/Microsoft.Sql/servers/securitytde-42/databases/testdb/transparentDataEncryption",
  "name": "current",
  "type": "Microsoft.Sql/servers/databases/transparentDataEncryption",
  "properties": {
    "state": "Enabled"
  }
}

정의

Name Description
LogicalDatabaseTransparentDataEncryption

논리적 데이터베이스 투명한 데이터 암호화 상태입니다.

TransparentDataEncryptionName

투명한 데이터 암호화 구성의 이름입니다.

TransparentDataEncryptionState

투명한 데이터 암호화의 상태를 지정합니다.

LogicalDatabaseTransparentDataEncryption

논리적 데이터베이스 투명한 데이터 암호화 상태입니다.

Name 형식 Description
id

string

리소스 ID입니다.

name

string

리소스 이름입니다.

properties.state

TransparentDataEncryptionState

투명한 데이터 암호화의 상태를 지정합니다.

type

string

리소스 종류.

TransparentDataEncryptionName

투명한 데이터 암호화 구성의 이름입니다.

Name 형식 Description
current

string

TransparentDataEncryptionState

투명한 데이터 암호화의 상태를 지정합니다.

Name 형식 Description
Disabled

string

Enabled

string