你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Add-AzKeyVaultManagedStorageAccount

将现有Azure 存储帐户添加到指定的密钥保管库,供其密钥由密钥库服务管理。

语法

Add-AzKeyVaultManagedStorageAccount
   [-VaultName] <String>
   [-AccountName] <String>
   [-AccountResourceId] <String>
   [-ActiveKeyName] <String>
   [-DisableAutoRegenerateKey]
   [-RegenerationPeriod <TimeSpan>]
   [-Disable]
   [-Tag <Hashtable>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

为密钥库管理存储帐户密钥设置具有密钥库的现有Azure 存储帐户。 存储帐户必须已存在。 存储密钥永远不会向调用方公开。 密钥库自动重新生成并根据重新生成期切换活动密钥。 有关此功能的概述,请参阅 Azure 密钥库托管存储帐户 - PowerShell

示例

示例 1:使用密钥库设置Azure 存储帐户来管理其密钥

$storage = Get-AzStorageAccount -ResourceGroupName "mystorageResourceGroup" -StorageAccountName "mystorage"
$servicePrincipal = Get-AzADServicePrincipal -ServicePrincipalName cfa8b339-82a2-471a-a3c9-0fc0be7a4093
New-AzRoleAssignment -ObjectId $servicePrincipal.Id -RoleDefinitionName 'Storage Account Key Operator Service Role' -Scope $storage.Id
$userPrincipalId = $(Get-AzADUser -SearchString "developer@contoso.com").Id
Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ObjectId $userPrincipalId -PermissionsToStorage get, set
$regenerationPeriod = [System.Timespan]::FromDays(90)
Add-AzKeyVaultManagedStorageAccount -VaultName 'myvault' -AccountName 'mystorageaccount' -AccountResourceId '/subscriptions/<subscription id>/resourceGroups/myresourcegroup/providers/Microsoft.Storage/storageAccounts/mystorageaccount' -ActiveKeyName 'key1' -RegenerationPeriod $regenerationPeriod

Id                  : https://myvault.vault.azure.net:443/storage/mystorageaccount
Vault Name          : myvault
AccountName         : mystorageaccount
Account Resource Id : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/myrg/providers/Microsoft.St
                      orage/storageAccounts/mystorageaccount
Active Key Name     : key1
Auto Regenerate Key : True
Regeneration Period : 90.00:00:00
Enabled             : True
Created             : 5/21/2018 11:55:58 PM
Updated             : 5/21/2018 11:55:58 PM
Tags                :

设置一个存储帐户,其中密钥库由密钥库管理其密钥。 活动密钥集为“key1”。 此密钥将用于生成 sas 令牌。 密钥库将在从此命令的重新生成周期后重新生成“key2”密钥,并将其设置为活动密钥。 此自动重新生成过程将在“key1”和“key2”之间继续,差距为 90 天。

示例 2:使用密钥库设置经典Azure 存储帐户以管理其密钥

$regenerationPeriod = [System.Timespan]::FromDays(90)
Add-AzKeyVaultManagedStorageAccount -VaultName 'myvault' -AccountName 'mystorageaccount' -AccountResourceId '/subscriptions/<subscription id>/resourceGroups/myresourcegroup/providers/Microsoft.ClassicStorage/storageAccounts/mystorageaccount' -ActiveKeyName 'Primary' -RegenerationPeriod $regenerationPeriod

Id                  : https://myvault.vault.azure.net:443/storage/mystorageaccount
Vault Name          : myvault
AccountName         : mystorageaccount
Account Resource Id : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/myvault/providers/Microsoft.Cl
                      assicStorage/storageAccounts/mystorageaccount
Active Key Name     : Primary
Auto Regenerate Key : True
Regeneration Period : 90.00:00:00
Enabled             : True
Created             : 5/21/2018 11:55:58 PM
Updated             : 5/21/2018 11:55:58 PM
Tags                :

设置经典存储帐户,其中密钥库由密钥库管理的密钥。 活动键集为“Primary”。 此密钥将用于生成 sas 令牌。 密钥库将在从此命令的重新生成周期后重新生成“辅助”密钥,并将其设置为活动密钥。 此自动重新生成过程将在“主要”和“次要”之间继续,差距为 90 天。

参数

-AccountName

密钥库托管存储帐户名称。 Cmdlet 从保管库名称构造托管存储帐户名称的 FQDN,当前选定的环境和托管存储帐户名称。

Type:String
Aliases:StorageAccountName, Name
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-AccountResourceId

存储帐户的 Azure 资源 ID。

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

-ActiveKeyName

必须用于生成 sas 令牌的存储帐户密钥的名称。

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

-Confirm

提示你在运行 cmdlet 之前进行确认。

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

-DefaultProfile

用于与 azure 通信的凭据、帐户、租户和订阅

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

-Disable

禁用使用托管存储帐户的密钥生成 sas 令牌。

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

-DisableAutoRegenerateKey

自动重新生成密钥。 如果为 true,则托管存储帐户的非活动密钥会自动重新生成,并在重新生成期后成为新的活动密钥。 如果为 false,则不会自动重新生成托管存储帐户的密钥。

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

-RegenerationPeriod

重新生成周期。 如果启用了自动重新生成密钥,则此值指定在托管存储帐户的非活动密钥Get 自动重新生成并成为新活动密钥之后的时间跨度。

Type:Nullable<T>[TimeSpan]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Tag

以哈希表的形式进行键值对。 例如:@{key0=“value0”;key1=$null;key2=“value2”}

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

-VaultName

保管库名称。 Cmdlet 基于名称和当前所选环境构造保管库的 FQDN。

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

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

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

输入

String

Nullable<T>[[System.TimeSpan, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

Hashtable

输出

PSKeyVaultManagedStorageAccount