New-AzKeyVault
建立金鑰保存庫。
語法
New-AzKeyVault
[-Name] <String>
[-ResourceGroupName] <String>
[-Location] <String>
[-EnabledForDeployment]
[-EnabledForTemplateDeployment]
[-EnabledForDiskEncryption]
[-EnablePurgeProtection]
[-EnableRbacAuthorization]
[-SoftDeleteRetentionInDays <Int32>]
[-PublicNetworkAccess <String>]
[-Sku <String>]
[-Tag <Hashtable>]
[-NetworkRuleSet <PSKeyVaultNetworkRuleSet>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[-SubscriptionId <String>]
[<CommonParameters>]
Description
New-AzKeyVault Cmdlet 會在指定的資源群組中建立密鑰保存庫。 此 Cmdlet 也會將許可權授與目前登入的使用者,以在密鑰保存庫中新增、移除或列出密鑰和秘密。 注意:如果您在嘗試建立新的密鑰保存庫時看到錯誤 ,訂用帳戶未註冊為使用命名空間 'Microsoft.KeyVault' ,請執行 Register-AzResourceProvider -ProviderNamespace “Microsoft.KeyVault” ,然後重新執行 New-AzKeyVault 命令。 如需詳細資訊,請參閱 Register-AzResourceProvider。
Cmdlet 可能會根據輸入參數呼叫下列Microsoft圖形 API:
- GET /directoryObjects/{id}
- GET /users/{id}
- GET /servicePrincipals/{id}
- GET /groups/{id}
- GET /me
範例
範例 1:建立標準金鑰保存庫
New-AzKeyVault -VaultName 'Contoso03Vault' -ResourceGroupName 'Group14' -Location 'East US'
Vault Name : contoso03vault
Resource Group Name : group14
Location : East US
Resource ID : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/group14/providers
/Microsoft.KeyVault/vaults/contoso03vault
Vault URI : https://contoso03vault.vault.azure.net/
Tenant ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
SKU : Standard
Enabled For Deployment? :
Enabled For Template Deployment? :
Enabled For Disk Encryption? :
Soft Delete Enabled? : True
Access Policies :
Tenant ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Object ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Application ID :
Display Name : User Name (username@microsoft.com)
Permissions to Keys : all
Permissions to Secrets : all
Permissions to Certificates : all
Permissions to (Key Vault Managed) Storage : all
Network Rule Set :
Default Action : Allow
Bypass : AzureServices
IP Rules :
Virtual Network Rules :
Tags :
此命令會在 Azure 區域美國東部建立名為 Contoso03Vault 的金鑰保存庫。 命令會將金鑰保存庫新增至名為 Group14 的資源群組。 因為命令未指定 SKU 參數的值,所以它會建立標準密鑰保存庫。
範例 2:建立進階金鑰保存庫
New-AzKeyVault -VaultName 'Contoso03Vault' -ResourceGroupName 'Group14' -Location 'East US' -Sku 'Premium'
Vault Name : contoso03vault
Resource Group Name : group14
Location : East US
Resource ID : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/group14/providers
/Microsoft.KeyVault/vaults/contoso03vault
Vault URI : https://contoso03vault.vault.azure.net/
Tenant ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
SKU : Premium
Enabled For Deployment? : False
Enabled For Template Deployment? : False
Enabled For Disk Encryption? : False
Soft Delete Enabled? :
Access Policies :
Tenant ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Object ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Application ID :
Display Name : User Name (username@microsoft.com)
Permissions to Keys : all
Permissions to Secrets : all
Permissions to Certificates : all
Permissions to (Key Vault Managed) Storage : all
Network Rule Set :
Default Action : Allow
Bypass : AzureServices
IP Rules :
Virtual Network Rules :
Tags :
此命令會建立金鑰保存庫,就像先前的範例一樣。 不過,它會為 SKU 參數指定 Premium 值,以建立進階密鑰保存庫。
範例 3
$frontendSubnet = New-AzVirtualNetworkSubnetConfig -Name frontendSubnet -AddressPrefix "110.0.1.0/24" -ServiceEndpoint Microsoft.KeyVault
$virtualNetwork = New-AzVirtualNetwork -Name myVNet -ResourceGroupName myRG -Location westus -AddressPrefix "110.0.0.0/16" -Subnet $frontendSubnet
$myNetworkResId = (Get-AzVirtualNetwork -Name myVNet -ResourceGroupName myRG).Subnets[0].Id
$ruleSet = New-AzKeyVaultNetworkRuleSetObject -DefaultAction Allow -Bypass AzureServices -IpAddressRange "110.0.1.0/24" -VirtualNetworkResourceId $myNetworkResId
New-AzKeyVault -ResourceGroupName "myRg" -VaultName "myVault" -NetworkRuleSet $ruleSet -Location westus
Vault Name : myVault
Resource Group Name : myRg
Location : East US
Resource ID : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/myRg/providers
/Microsoft.KeyVault/vaults/myVault
Vault URI : https://myVault.vault.azure.net/
Tenant ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
SKU : Premium
Enabled For Deployment? : False
Enabled For Template Deployment? : False
Enabled For Disk Encryption? : False
Soft Delete Enabled? :
Access Policies :
Tenant ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Object ID : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Application ID :
Display Name : User Name (username@microsoft.com)
Permissions to Keys : all
Permissions to Secrets : all
Permissions to Certificates : all
Permissions to (Key Vault Managed) Storage : all
Network Rule Set :
Default Action : Allow
Bypass : AzureServices
IP Rules : 110.0.1.0/24
Virtual Network Rules : /subscriptions/0b1f6471-1bf0-4dda-ae
c3-cb9272f09590/resourcegroups/myRg/providers/microsoft.network/virtualnetworks
/myvnet/subnets/frontendsubnet
Tags :
建立密鑰保存庫並指定網路規則,以允許從$myNetworkResId所識別的虛擬網路存取指定的IP位址。 如需相關資訊,請參閱 New-AzKeyVaultNetworkRuleSetObject
。
參數
-Confirm
執行 Cmdlet 之前先提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DefaultProfile
用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶
類型: | IAzureContextContainer |
別名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-EnabledForDeployment
當資源建立中參考此密鑰保存庫時,可讓 Microsoft.Compute 資源提供者從此密鑰保存庫擷取秘密,例如建立虛擬機時。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-EnabledForDiskEncryption
可讓 Azure 磁碟加密服務從此金鑰保存庫取得秘密和解除包裝密鑰。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-EnabledForTemplateDeployment
當範本部署中參考此金鑰保存庫時,可讓 Azure Resource Manager 從此密鑰保存庫取得秘密。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-EnablePurgeProtection
如果指定,則會為此保存庫啟用立即刪除的保護;也需要啟用虛刪除。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-EnableRbacAuthorization
如果指定,則允許依角色型 存取控制 (RBAC) 授權數據動作,然後忽略保存庫屬性中指定的存取原則。 請注意,管理動作一律已獲得 RBAC 的授權。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Location
指定要在其中建立金鑰保存庫的 Azure 區域。 使用 Get-AzLocation 命令來查看您的選擇。
類型: | String |
Position: | 2 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-Name
指定要建立的金鑰儲存庫名稱。 名稱可以是字母、數位或連字元的任何組合。 名稱必須以字母或數字開頭和結尾。 名稱必須是通用唯一的。
類型: | String |
別名: | VaultName |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-NetworkRuleSet
指定保存庫的網路規則集。 它會控管來自特定網路位置之金鑰保存庫的存取範圍。 由建立。New-AzKeyVaultNetworkRuleSetObject
類型: | PSKeyVaultNetworkRuleSet |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-PublicNetworkAccess
指定保存庫是否接受來自公用因特網的流量。 如果設定為 「已停用」,則私人端點流量以外的所有流量,且源自信任服務的所有流量都會遭到封鎖。 這會覆寫設定的防火牆規則,這表示即使防火牆規則存在,我們也不會遵守規則。 根據預設,我們將啟用公用網路存取。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ResourceGroupName
指定要在其中建立金鑰保存庫的現有資源群組名稱。
類型: | String |
Position: | 1 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-Sku
指定金鑰保存庫實例的 SKU。 如需每個 SKU 可用的功能相關信息,請參閱 Azure 金鑰保存庫 定價網站 (https://go.microsoft.com/fwlink/?linkid=512521)。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-SoftDeleteRetentionInDays
指定保留已刪除的資源時間,以及保存庫或處於已刪除狀態的物件可以清除多久。 預設值為90天。
類型: | Int32 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-SubscriptionId
訂用帳戶的識別碼。 根據預設,Cmdlet 會在目前內容中設定的訂用帳戶中執行。 如果使用者指定另一個訂用帳戶,則會在使用者指定的訂用帳戶中執行目前的 Cmdlet。 覆寫訂閱只會在目前 Cmdlet 的生命週期內生效。 它不會變更內容中的訂用帳戶,而且不會影響後續的 Cmdlet。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Tag
哈希表形式的索引鍵/值組。 例如:@{key0=“value0”;key1=$null;key2=“value2”}
類型: | Hashtable |
別名: | Tags |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |