共用方式為


Add-AzureKeyVaultManagedStorageAccount

將現有的 Azure 儲存體 帳戶新增至指定的金鑰保存庫,以供 金鑰保存庫 服務管理的密鑰。

警告

自 2024 年 2 月 29 日起,AzureRM PowerShell 模組已正式淘汰。 建議使用者從 AzureRM 遷移至 Az PowerShell 模組,以確保持續支援和更新。

雖然 AzureRM 模組可能仍可運作,但不再維護或支援它,但會根據用戶的判斷權和風險放置任何繼續使用。 如需轉換至 Az 模組的指引,請參閱我們的 移轉資源

語法

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

Description

設定現有的 Azure 儲存體 帳戶,其中具有 金鑰保存庫,以供 金鑰保存庫 管理的記憶體帳戶密鑰。 記憶體帳戶必須已經存在。 記憶體金鑰永遠不會公開給呼叫端。 金鑰保存庫 自動重新產生,並根據重新產生期間切換使用中的金鑰。

範例

範例 1:使用 金鑰保存庫 設定 Azure 儲存體 帳戶以管理其密鑰

PS C:\> $storage = Get-AzureRmStorageAccount -ResourceGroupName "mystorageResourceGroup" -StorageAccountName "mystorage"
PS C:\> $servicePrincipal = Get-AzureRmADServicePrincipal -ServicePrincipalName cfa8b339-82a2-471a-a3c9-0fc0be7a4093
PS C:\> New-AzureRmRoleAssignment -ObjectId $servicePrincipal.Id -RoleDefinitionName 'Storage Account Key Operator Service Role' -Scope $storage.Id
PS C:\> $userPrincipalId = $(Get-AzureRmADUser -SearchString "developer@contoso.com").Id
PS C:\> Set-AzureRmKeyVaultAccessPolicy -VaultName $keyVaultName -ObjectId $userPrincipalId -PermissionsToStorage get, set
PS C:\> $regenerationPeriod = [System.Timespan]::FromDays(90)
PS C:\> Add-AzureKeyVaultManagedStorageAccount -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 儲存體 帳戶來管理其密鑰

PS C:\> $regenerationPeriod = [System.Timespan]::FromDays(90)
PS C:\> Add-AzureKeyVaultManagedStorageAccount -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                :

將具有 金鑰保存庫 的傳統記憶體帳戶設定為要由 金鑰保存庫 管理的密鑰。 使用中索引鍵集為 「主要」。 此金鑰將用來產生 sas 令牌。 金鑰保存庫 會在此命令的重新產生期間之後重新產生「次要」金鑰,並將它設定為使用中的密鑰。 此自動重新產生程式會在「主要」與「次要」之間繼續,差距為90天。

參數

-AccountName

金鑰保存庫 受控記憶體帳戶名稱。 Cmdlet 會從保存庫名稱建構受控記憶體帳戶名稱的 FQDN,目前選取的環境和受控記憶體帳戶名稱。

類型:String
別名:StorageAccountName, Name
Position:1
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-AccountResourceId

記憶體帳戶的 Azure 資源識別碼。

類型:String
別名:StorageAccountResourceId
Position:2
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-ActiveKeyName

必須用來產生 sas 令牌的記憶體帳戶金鑰名稱。

類型:String
Position:3
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-Confirm

執行 Cmdlet 之前先提示您確認。

類型:SwitchParameter
別名:cf
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-DefaultProfile

用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶

類型:IAzureContextContainer
別名:AzureRmContext, AzureCredential
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Disable

停用使用受控記憶體帳戶的密鑰來產生 sas 令牌。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-DisableAutoRegenerateKey

自動重新產生金鑰。 如果為 true,則受控記憶體帳戶的非使用中密鑰會自動重新產生,並在重新產生期間之後成為新的使用中密鑰。 如果為 false,則不會自動重新產生受控記憶體帳戶的密鑰。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-RegenerationPeriod

重新產生期間。 如果啟用自動重新產生金鑰,這個值會指定受控記憶體帳戶非使用中密鑰取得自動重新產生,並成為新的使用中金鑰之後的時間範圍。

類型:Nullable<T>[TimeSpan]
Position:Named
預設值:None
必要:False
接受管線輸入:True
接受萬用字元:False

-Tag

哈希表形式的索引鍵/值組。 例如:@{key0=“value0”;key1=$null;key2=“value2”}

類型:Hashtable
別名:Tags
Position:Named
預設值:None
必要:False
接受管線輸入:True
接受萬用字元:False

-VaultName

保存庫名稱。 Cmdlet 會根據名稱和目前選取的環境來建構保存庫的 FQDN。

類型:String
Position:0
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-WhatIf

顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。

類型:SwitchParameter
別名:wi
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

String

Nullable<T>[[System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

Hashtable

輸出

PSKeyVaultManagedStorageAccount