Freigeben über


Update-AzCosmosDbClientEncryptionKey

Aktualisiert den CosmosDB-Clientverschlüsselungsschlüssel. Führt einen clientseitigen Patchvorgang durch Lesen des vorhandenen Clientverschlüsselungsschlüssels aus.

Syntax

Update-AzCosmosDbClientEncryptionKey
      -ResourceGroupName <String>
      -AccountName <String>
      -DatabaseName <String>
      -Name <String>
      -KeyWrapMetadata <PSSqlKeyWrapMetadata>
      [-KeyEncryptionKeyResolver <IKeyEncryptionKeyResolver>]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzCosmosDbClientEncryptionKey
      -Name <String>
      -KeyWrapMetadata <PSSqlKeyWrapMetadata>
      [-KeyEncryptionKeyResolver <IKeyEncryptionKeyResolver>]
      -SqlDatabaseObject <PSSqlDatabaseGetResults>
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzCosmosDbClientEncryptionKey
      -KeyWrapMetadata <PSSqlKeyWrapMetadata>
      [-KeyEncryptionKeyResolver <IKeyEncryptionKeyResolver>]
      -InputObject <PSSqlClientEncryptionKeyGetResults>
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Beschreibung

Der Update-AzCosmosDbClientEncryptionKey aktualisiert den CosmosDb-Clientverschlüsselungsschlüssel. Führt einen clientseitigen Patchvorgang durch Lesen des vorhandenen CosmosDB-Clientverschlüsselungsschlüssels aus.

Beispiele

Beispiel 1

$updatedKeyWrapMetadataObject = [Microsoft.Azure.Commands.CosmosDB.Models.PSSqlKeyWrapMetadata]::new([Microsoft.Azure.Management.CosmosDB.Models.KeyWrapMetadata]::new("myKekV2","AZURE_KEY_VAULT", "https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71", "RSA-OAEP"))
Update-AzCosmosDbClientEncryptionKey -AccountName myAccountName -DatabaseName myDatabaseName -ResourceGroupName myRgName -Name myClientEncryptionKeyName -KeyWrapMetadata $updatedKeyWrapMetadataObject

Name     : myContainerName
Id       : /subscriptions/mySubscriptionId/resourceGroups/myRgName/providers/Microsoft.DocumentDB/databaseAccounts/myAccountName/sqlDatabases/myDatabaseName/clientEncryptionKeys/myClientEncryptionKeyName
Resource : Microsoft.Azure.Commands.CosmosDB.Models.PSSqlClientEncryptionKeyGetPropertiesResource

In diesem Beispiel wird gezeigt, wie ein Schlüssel aktualisiert wird. Wenn KeyEncryptionKeyResolver nicht übergeben wird, wird Azure Key Vault KeyResolver standardmäßig verwendet. Der erste Befehl erstellt ein KeyWrapMetadata-Objekt mit dem Namen myKekV2 vom Typ AZURE_KEY_VAULT mit wertsatz auf Schlüssel-ID https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71 und Algorithmustyp "RSA-OAEP", der zum Verschlüsseln des Schlüssels verwendet wird. Im zweiten Befehl wird ein Schlüssel mit dem Namen, der in der Variablen "myClientEncryptionKeyName" festgelegt ist, mit keyWrapMetadata aktualisiert, der auf den Wert festgelegt ist, der vom ersten Befehl zurückgegeben wird.

Beispiel 2

$updatedKeyWrapMetadataObject = [Microsoft.Azure.Commands.CosmosDB.Models.PSSqlKeyWrapMetadata]::new([Microsoft.Azure.Management.CosmosDB.Models.KeyWrapMetadata]::new("myKekV2","AZURE_KEY_VAULT", "https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71", "RSA-OAEP"))
$azureKeyVaultKeyResolver = [Azure.Security.KeyVault.Keys.Cryptography.KeyResolver]::new([Azure.Identity.DefaultAzureCredential]::new())
Update-AzCosmosDbClientEncryptionKey -AccountName myAccountName -DatabaseName myDatabaseName -ResourceGroupName myRgName -Name myClientEncryptionKeyName -KeyWrapMetadata $updatedKeyWrapMetadataObject -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

In diesem Beispiel wird gezeigt, wie ein Schlüssel aktualisiert wird und wie KeyEncryptionKeyResolver als Parameter übergeben werden kann. Der erste Befehl erstellt ein KeyWrapMetadata-Objekt mit dem Namen myKekV2 vom Typ AZURE_KEY_VAULT mit wertsatz auf Schlüssel-ID https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71 und Algorithmustyp "RSA-OAEP", der zum Verschlüsseln des Schlüssels verwendet wird. Der zweite Befehl erstellt ein Azure Key Vault KeyResolver-Objekt mit den Azure Default-Anmeldeinformationen. Im dritten Befehl wird ein Schlüssel mit dem Namen, der in der Variablen myClientEncryptionKeyName festgelegt ist, mit KeyWrapMetadata auf wert aktualisiert, der durch den ersten Befehl zurückgegeben wird, und keyEncryptionKeyResolver-Wert auf KeyResolver-Objekt festgelegt, das über den zweiten Befehl abgerufen wird.

Beispiel 3

$updatedKeyWrapMetadataObject = [Microsoft.Azure.Commands.CosmosDB.Models.PSSqlKeyWrapMetadata]::new([Microsoft.Azure.Management.CosmosDB.Models.KeyWrapMetadata]::new("myKekV2","AZURE_KEY_VAULT", "https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71", "RSA-OAEP"))
$keyToUpdate = Get-AzCosmosDbClientEncryptionKey -AccountName myAccountName -DatabaseName myDatabaseName -ResourceGroupName myRgName -ClientEncryptionKeyName myClientEncryptionKeyName
Update-AzCosmosDbClientEncryptionKey -InputObject $keyToUpdate -KeyWrapMetadata $updatedKeyWrapMetadataObject -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

In diesem Beispiel wird gezeigt, wie ein Schlüssel mithilfe eines InputObjects aktualisiert wird, das durch Lesen des Schlüssels abgerufen wird, der aktualisiert werden muss. Der erste Befehl erstellt ein KeyWrapMetadata-Objekt mit dem Namen myKekV2 vom Typ AZURE_KEY_VAULT mit wertsatz auf Schlüssel-ID https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71 und Algorithmustyp "RSA-OAEP", der zum Verschlüsseln des Schlüssels verwendet wird. Im zweiten Befehl wird die Taste gelesen, die aktualisiert werden soll. Der dritte Befehl aktualisiert die Taste, die zuvor im zweiten Befehl gelesen wurde. Das im zweiten Befehl gelesene Objekt wird zusammen mit den aktualisierten KeyWrapMetadata,die im ersten Befehl abgerufen wurden, als InputObject übergeben.

Parameter

-AccountName

Name des Cosmos DB-Datenbankkontos.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseName

Datenbankname.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Anmeldeinformationen, Konto, Mandant und Abonnement für die Kommunikation mit Azure

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Client Encryption Key-Objekt.

Type:PSSqlClientEncryptionKeyGetResults
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-KeyEncryptionKeyResolver

IKeyEncryptionKeyResolver-Schnittstelle vom Typ Azure.Core.Cryptography.IKeyEncryptionKeyResolver

Type:IKeyEncryptionKeyResolver
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-KeyWrapMetadata

KeyWrapMetaData-Objekt vom Typ "Microsoft.Azure.Commands.CosmosDB.PSSqlKeyWrapMetadata".

Type:PSSqlKeyWrapMetadata
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Name des Clientverschlüsselungsschlüssels.

Type:String
Aliases:ClientEncryptionKeyName
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

Name der Ressourcengruppe

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SqlDatabaseObject

Sql-Datenbankobjekt.

Type:PSSqlDatabaseGetResults
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Eingaben

Byte[]

PSSqlKeyWrapMetadata

Microsoft.Data.Encryption.Cryptography.EncryptionKeyStoreProvider

PSSqlDatabaseGetResults

PSSqlClientEncryptionKeyGetResults

Ausgaben

PSSqlClientEncryptionKeyGetResults

ResourceNotFoundException