Dela via


Update-AzCosmosDbClientEncryptionKey

Uppdaterar CosmosDB-klientkrypteringsnyckeln. Utför en korrigeringsåtgärd på klientsidan genom att läsa den befintliga klientkrypteringsnyckeln.

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

Description

Update-AzCosmosDbClientEncryptionKey uppdaterar CosmosDb-klientkrypteringsnyckeln. Utför en korrigeringsåtgärd på klientsidan genom att läsa den befintliga CosmosDB-klientkrypteringsnyckeln.

Exempel

Exempel 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

Det här exemplet visar hur en nyckel uppdateras. Om KeyEncryptionKeyResolver inte skickas används Azure Key Vault KeyResolver som standard. Det första kommandot skapar ett KeyWrapMetadata-objekt med namnet myKekV2 av typen AZURE_KEY_VAULT med värdet inställt på nyckel-ID https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71 och algoritmtypen "RSA-OAEP" som används för att kryptera nyckeln. I det andra kommandot uppdateras en nyckel med namnet som anges i variabeln myClientEncryptionKeyName med KeyWrapMetadata inställt på värdet som returneras av det första kommandot.

Exempel 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

Det här exemplet visar hur en nyckel uppdateras och hur KeyEncryptionKeyResolver kan skickas som en parameter. Det första kommandot skapar ett KeyWrapMetadata-objekt med namnet myKekV2 av typen AZURE_KEY_VAULT med värdet inställt på nyckel-ID https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71 och algoritmtypen "RSA-OAEP" som används för att kryptera nyckeln. Det andra kommandot skapar ett Azure Key Vault KeyResolver-objekt med azure-standardautentiseringsuppgifterna. I det tredje kommandot uppdateras en nyckel med namnet som anges i variabeln myClientEncryptionKeyName med KeyWrapMetadata inställt på värdet som returneras av det första kommandot och KeyEncryptionKeyResolver-värdet anges till KeyResolver-objekt som hämtas via det andra kommandot.

Exempel 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

Det här exemplet visar hur en nyckel uppdateras med hjälp av en InputObject som hämtas genom att läsa nyckeln som måste uppdateras. Det första kommandot skapar ett KeyWrapMetadata-objekt med namnet myKekV2 av typen AZURE_KEY_VAULT med värdet inställt på nyckel-ID https://contoso.vault.azure.net/keys/myKekV2/78deebed173b48e48f55abf87ed4cf71 och algoritmtypen "RSA-OAEP" som används för att kryptera nyckeln. I det andra kommandot läser du nyckeln som ska uppdateras. Det tredje kommandot uppdaterar nyckeln som lästes tidigare i det andra kommandot. Objektet som läses i det andra kommandot skickas som InputObject tillsammans med uppdaterade KeyWrapMetadata som hämtades i det första kommandot.

Parametrar

-AccountName

Namnet på Cosmos DB-databaskontot.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

Typ:SwitchParameter
Alias:cf
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-DatabaseName

Databasnamn.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-DefaultProfile

Autentiseringsuppgifter, konto, klientorganisation och prenumeration som används för kommunikation med Azure.

Typ:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-InputObject

Klientkrypteringsnyckelobjekt.

Typ:PSSqlClientEncryptionKeyGetResults
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-KeyEncryptionKeyResolver

IKeyEncryptionKeyResolver-gränssnitt av typen Azure.Core.Cryptography.IKeyEncryptionKeyResolver

Typ:IKeyEncryptionKeyResolver
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-KeyWrapMetadata

KeyWrapMetaData-objekt av typen Microsoft.Azure.Commands.CosmosDB.PSSqlKeyWrapMetadata.

Typ:PSSqlKeyWrapMetadata
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-Name

Namn på klientkrypteringsnyckel.

Typ:String
Alias:ClientEncryptionKeyName
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-ResourceGroupName

Namn på resursgrupp.

Typ:String
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:False
Godkänn jokertecken:False

-SqlDatabaseObject

Sql Database-objekt.

Typ:PSSqlDatabaseGetResults
Position:Named
Standardvärde:None
Obligatorisk:True
Godkänn pipeline-indata:True
Godkänn jokertecken:False

-WhatIf

Visar vad som skulle hända om cmdleten körs. Cmdleten körs inte.

Typ:SwitchParameter
Alias:wi
Position:Named
Standardvärde:None
Obligatorisk:False
Godkänn pipeline-indata:False
Godkänn jokertecken:False

Indata

Byte[]

PSSqlKeyWrapMetadata

Microsoft.Data.Encryption.Cryptography.EncryptionKeyStoreProvider

PSSqlDatabaseGetResults

PSSqlClientEncryptionKeyGetResults

Utdata

PSSqlClientEncryptionKeyGetResults

ResourceNotFoundException