Set-AzKeyVaultManagedStorageSasDefinition
為指定的受控 金鑰保存庫 Azure 儲存體 帳戶設定具有 金鑰保存庫 金鑰保存庫 的共用存取簽章 (SAS) 定義。
語法
Set-AzKeyVaultManagedStorageSasDefinition
[-VaultName] <String>
[-AccountName] <String>
[-Name] <String>
[-TemplateUri] <String>
[-SasType] <String>
[-Disable]
[-Tag <Hashtable>]
-ValidityPeriod <TimeSpan>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-AzKeyVaultManagedStorageSasDefinition
[-InputObject] <PSKeyVaultManagedStorageAccountIdentityItem>
[-Name] <String>
[-TemplateUri] <String>
[-SasType] <String>
[-Disable]
[-Tag <Hashtable>]
-ValidityPeriod <TimeSpan>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
使用指定的 金鑰保存庫 受控 Azure 儲存體 帳戶來設定共用存取簽章 (SAS) 定義。 這也會設定秘密,可用來根據此 SAS 定義取得 SAS 令牌。 SAS 令牌是使用這些參數和 金鑰保存庫 受管理 Azure 儲存體 帳戶的作用中密鑰來產生。
範例
範例 1:設定帳戶類型 SAS 定義,並根據它取得目前的 SAS 令牌
$sa = Get-AzStorageAccount -Name mysa -ResourceGroupName myrg
$kv = Get-AzKeyVault -VaultName mykv
Add-AzKeyVaultManagedStorageAccount -VaultName $kv.VaultName -AccountName $sa.StorageAccountName -AccountResourceId $sa.Id -ActiveKeyName key1 -RegenerationPeriod ([System.Timespan]::FromDays(180))
$sctx = New-AzStorageContext -StorageAccountName $sa.StorageAccountName -Protocol Https -StorageAccountKey Key1
$start = [System.DateTime]::Now.AddDays(-1)
$end = [System.DateTime]::Now.AddMonths(1)
$at = "sv=2018-03-28&ss=bfqt&srt=sco&sp=rw&spr=https"
$sas = Set-AzKeyVaultManagedStorageSasDefinition -AccountName $sa.StorageAccountName -VaultName $kv.VaultName -Name accountsas -TemplateUri $at -SasType 'account' -ValidityPeriod ([System.Timespan]::FromDays(30))
Get-AzKeyVaultSecret -VaultName $kv.VaultName -Name $sas.Sid.Substring($sas.Sid.LastIndexOf('/')+1)
在保存庫 'mykv' 的 KeyVault 受控記憶體帳戶 'mysa' 上設定帳戶 SAS 定義 'accountsas'。 具體來說,上述順序會執行下列動作:
- 取得 (預先存在的) 儲存體帳戶
- 取得 (預先存在的) 金鑰保存庫
- 將 KeyVault 管理的記憶體帳戶新增至保存庫、將 Key1 設定為使用中密鑰,以及重新產生期間為 180 天
- 使用 Key1 設定指定記憶體帳戶的記憶體內容
- 針對資源類型 Service、Container 和 Object,透過 HTTPs 建立服務 Blob、檔案、數據表和佇列的帳戶 SAS 令牌,並透過 HTTPs,以及指定的開始和結束日期
- 在保存庫中設定 KeyVault 管理的記憶體 SAS 定義,並將範本 URI 作為上面建立的 SAS 令牌,SAS 類型為 'account' 且有效期為 30 天
- 從對應至 SAS 定義的 KeyVault 秘密擷取實際存取令牌
參數
-AccountName
金鑰保存庫 受控記憶體帳戶名稱。 Cmdlet 會從保存庫名稱建構受控記憶體帳戶名稱的 FQDN,目前選取的環境和受控記憶體帳戶名稱。
類型: | String |
別名: | StorageAccountName |
Position: | 1 |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-Confirm
執行 Cmdlet 之前先提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DefaultProfile
用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶
類型: | IAzureContextContainer |
別名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Disable
停用 sas 定義來產生 sas 令牌。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-InputObject
ManagedStorageAccount 物件。
類型: | PSKeyVaultManagedStorageAccountIdentityItem |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-Name
記憶體 SAS 定義名稱。 Cmdlet 會從保存庫名稱、目前選取的環境、記憶體帳戶名稱和 sas 定義名稱建構記憶體 sas 定義的 FQDN。
類型: | String |
別名: | SasDefinitionName |
Position: | 2 |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-SasType
記憶體 SAS 類型。
類型: | String |
Position: | 4 |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-Tag
哈希表形式的索引鍵/值組。 例如:@{key0=“value0”;key1=$null;key2=“value2”}
類型: | Hashtable |
別名: | Tags |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-TemplateUri
記憶體 SAS 定義範本 URI。
類型: | String |
Position: | 3 |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-ValidityPeriod
將用來設定 SAS 令牌到期時間的有效期間,從產生時開始
類型: | Nullable<T>[TimeSpan] |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-VaultName
保存庫名稱。 Cmdlet 會根據名稱和目前選取的環境來建構保存庫的 FQDN。
類型: | String |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
PSKeyVaultManagedStorageAccountIdentityItem
輸出
PSKeyVaultManagedStorageSasDefinition