New-AzCosmosDbClientEncryptionKey
새 CosmosDB 클라이언트 암호화 키를 만듭니다.
구문
New-AzCosmosDbClientEncryptionKey
-ResourceGroupName <String>
-AccountName <String>
-DatabaseName <String>
-Name <String>
-EncryptionAlgorithmName <String>
-KeyWrapMetadata <PSSqlKeyWrapMetadata>
[-KeyEncryptionKeyResolver <IKeyEncryptionKeyResolver>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-AzCosmosDbClientEncryptionKey
-Name <String>
-EncryptionAlgorithmName <String>
-KeyWrapMetadata <PSSqlKeyWrapMetadata>
[-KeyEncryptionKeyResolver <IKeyEncryptionKeyResolver>]
-SqlDatabaseObject <PSSqlDatabaseGetResults>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
New-AzCosmosDbClientEncryptionKey 새 CosmosDB 클라이언트 암호화 키를 만듭니다.
예제
예제 1
$myKeyWrapMetadataObject = [Microsoft.Azure.Commands.CosmosDB.Models.PSSqlKeyWrapMetadata]::new([Microsoft.Azure.Management.CosmosDB.Models.KeyWrapMetadata]::new("myKekV1","AZURE_KEY_VAULT", "https://contoso.vault.azure.net/keys/myKekV1/78deebed173b48e48f55abf87ed4cf71", "RSA-OAEP"))
New-AzCosmosDbClientEncryptionKey -AccountName myAccountName -DatabaseName myDatabaseName -ResourceGroupName myRgName -Name myClientEncryptionKeyName -EncryptionAlgorithmName "AEAD_AES_256_CBC_HMAC_SHA256" -KeyWrapMetadata $myKeyWrapMetadataObject
Name : myContainerName
Id : /subscriptions/mySubscriptionId/resourceGroups/myRgName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlDatabases/myDatabaseName/clientEncryptionKeys/myClientEncryptionKeyName
Resource : Microsoft.Azure.Commands.CosmosDB.Models.PSSqlClientEncryptionKeyGetPropertiesResource
이 예제에서는 새 키를 만드는 방법을 보여줍니다. KeyEncryptionKeyResolver가 전달되지 않은 경우 Azure Key Vault KeyResolver는 기본적으로 사용됩니다. 첫 번째 명령은 키 ID https://contoso.vault.azure.net/keys/myKekV1/78deebed173b48e48f55abf87ed4cf71 값이 설정된 AZURE_KEY_VAULT 형식의 myKekV1 이름을 가진 KeyWrapMetadata 개체를 만들고 키를 암호화하는 데 사용되는 알고리즘 형식 "RSA-OAEP"을 만듭니다. 두 번째 명령에서는 myClientEncryptionKeyName 변수에 설정된 이름으로 새 키를 만들고 KeyWrapMetadata를 첫 번째 명령에서 반환된 값으로 설정합니다.
예제 2
$myKeyWrapMetadataObject = [Microsoft.Azure.Commands.CosmosDB.Models.PSSqlKeyWrapMetadata]::new([Microsoft.Azure.Management.CosmosDB.Models.KeyWrapMetadata]::new("myKekV1","AZURE_KEY_VAULT", "https://contoso.vault.azure.net/keys/myKekV1/78deebed173b48e48f55abf87ed4cf71", "RSA-OAEP"))
$azureKeyVaultKeyResolver = [Azure.Security.KeyVault.Keys.Cryptography.KeyResolver]::new([Azure.Identity.DefaultAzureCredential]::new())
New-AzCosmosDbClientEncryptionKey -AccountName myAccountName -DatabaseName myDatabaseName -ResourceGroupName myRgName -Name myClientEncryptionKeyName -EncryptionAlgorithmName "AEAD_AES_256_CBC_HMAC_SHA256" -KeyWrapMetadata $myKeyWrapMetadataObject -KeyEncryptionKeyResolver $azureKeyVaultKeyResolver
Name : myContainerName
Id : /subscriptions/mySubscriptionId/resourceGroups/myRgName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlDatabases/myDatabaseName/clientEncryptionKeys/myClientEncryptionKeyName
Resource : Microsoft.Azure.Commands.CosmosDB.Models.PSSqlClientEncryptionKeyGetPropertiesResource
이 예제에서는 새 키를 만드는 방법과 KeyEncryptionKeyResolver를 매개 변수로 전달하는 방법을 보여 줍니다. 첫 번째 명령은 키 ID https://contoso.vault.azure.net/keys/myKekV1/78deebed173b48e48f55abf87ed4cf71 값이 설정된 AZURE_KEY_VAULT 형식의 myKekV1 이름을 가진 KeyWrapMetadata 개체를 만들고 키를 암호화하는 데 사용되는 알고리즘 형식 "RSA-OAEP"을 만듭니다. 두 번째 명령은 Azure 기본 자격 증명을 사용하여 Azure Key Vault KeyResolver 개체를 만듭니다. 세 번째 명령에서는 myClientEncryptionKeyName 변수에 설정된 이름으로 새 키를 만들고, KeyWrapMetadata는 첫 번째 명령에서 반환된 값으로 설정하고, KeyEncryptionKeyResolver 값은 두 번째 명령을 통해 얻은 KeyResolver 개체로 설정됩니다.
매개 변수
-AccountName
Cosmos DB 데이터베이스 계정의 이름입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Confirm
cmdlet을 실행하기 전에 확인 메시지를 표시합니다.
형식: | SwitchParameter |
별칭: | cf |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DatabaseName
데이터베이스 이름입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DefaultProfile
Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.
형식: | IAzureContextContainer |
별칭: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-EncryptionAlgorithmName
클라이언트 암호화 알고리즘 이름입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-KeyEncryptionKeyResolver
Azure.Core.Cryptography.IKeyEncryptionKeyResolver 형식의 IKeyEncryptionKeyResolver 인터페이스
형식: | IKeyEncryptionKeyResolver |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-KeyWrapMetadata
Microsoft.Azure.Commands.CosmosDB.PSSqlKeyWrapMetadata 형식의 KeyWrapMetaData 개체입니다.
형식: | PSSqlKeyWrapMetadata |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Name
클라이언트 암호화 키 이름입니다.
형식: | String |
별칭: | ClientEncryptionKeyName |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ResourceGroupName
리소스 그룹의 이름입니다.
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-SqlDatabaseObject
Sql Database 개체입니다.
형식: | PSSqlDatabaseGetResults |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-WhatIf
cmdlet이 실행되면 어떻게 되는지 보여 주세요. cmdlet이 실행되지 않습니다.
형식: | SwitchParameter |
별칭: | wi |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
Byte[]
Microsoft.Data.Encryption.Cryptography.EncryptionKeyStoreProvider
출력
PSSqlClientEncryptionKeyGetResults
관련 링크
Azure PowerShell