你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Update-AzureKeyVaultSecret
更新密钥保管库中机密的属性。
警告
AzureRM PowerShell 模块已自 2024 年 2 月 29 日起正式弃用。 为了确保持续获得支持和更新,建议用户从 AzureRM 迁移到 Az PowerShell 模块。
尽管 AzureRM 模块仍可运行,但不再受到维护或支持,任何继续使用的行为都由用户自行决定并自行承担风险。 有关过渡到 Az 模块的指导,请参阅我们的迁移资源。
语法
Update-AzureKeyVaultSecret
[-VaultName] <String>
[-Name] <String>
[[-Version] <String>]
[-Enable <Boolean>]
[-Expires <DateTime>]
[-NotBefore <DateTime>]
[-ContentType <String>]
[-Tag <Hashtable>]
[-PassThru]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Update-AzureKeyVaultSecret
[-InputObject] <PSKeyVaultSecretIdentityItem>
[[-Version] <String>]
[-Enable <Boolean>]
[-Expires <DateTime>]
[-NotBefore <DateTime>]
[-ContentType <String>]
[-Tag <Hashtable>]
[-PassThru]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
Update-AzureKeyVaultSecret cmdlet 更新密钥保管库中机密的可编辑属性。
示例
示例 1:修改机密的属性
PS C:\> $Expires = (Get-Date).AddYears(2).ToUniversalTime()
PS C:\> $Nbf = (Get-Date).ToUniversalTime()
PS C:\> $Tags = @{ 'Severity' = 'medium'; 'HR' = 'true'}
PS C:\> $ContentType= 'xml'
PS C:\> Update-AzureKeyVaultSecret -VaultName 'ContosoVault' -Name 'HR' -Expires $Expires -NotBefore $Nbf -ContentType $ContentType -Enable $True -Tag $Tags -PassThru
Vault Name : ContosoVault
Name : HR
Version : d476edfcd3544017a03bc49c1f3abec0
Id : https://ContosoVault.vault.azure.net:443/secrets/HR/d476edfcd3544017a03bc49c1f3abec0
Enabled : True
Expires : 5/25/2020 8:01:58 PM
Not Before : 5/25/2018 8:02:02 PM
Created : 4/11/2018 11:45:06 PM
Updated : 5/25/2018 8:02:45 PM
Content Type : xml
Tags : Name Value
Severity medium
HR true
前四个命令定义到期日期、NotBefore 日期、标记和上下文类型的属性,并将属性存储在变量中。 最后一个命令使用存储的变量修改名为 CONtosoVault 的密钥保管库中名为 HR 的机密的属性。
示例 2:删除机密的标记和内容类型
PS C:\> Update-AzureKeyVaultSecret -VaultName 'ContosoVault' -Name 'HR' -Version '9EEA45C6EE50490B9C3176A80AC1A0DF' -ContentType '' -Tag -@{}
此命令删除名为 Contoso 的密钥保管库中名为 HR 的指定版本的机密的标记和内容类型。
示例 3:禁用名称以 IT 开头的当前机密版本
PS C:\> $Vault = 'ContosoVault'
PS C:\> $Prefix = 'IT'
PS C:\> Get-AzureKeyVaultSecret $Vault | Where-Object {$_.Name -like $Prefix + '*'} | Update-AzureKeyVaultSecret -Enable $False
第一个命令将字符串值 Contoso 存储在$Vault变量中。 第二个命令将字符串值 IT 存储在$Prefix变量中。 第三个命令使用 Get-AzureKeyVaultSecret cmdlet 获取指定密钥保管库中的机密,然后将这些机密传递给 Where-Object cmdlet。 Where-Object cmdlet 筛选以 IT 字符开头的名称的机密。 该命令通过管道将筛选器匹配的机密传递给 Update-AzureKeyVaultSecret cmdlet,该 cmdlet 会禁用它们。
示例 4:为所有版本的机密设置 ContentType
PS C:\> $VaultName = 'ContosoVault'
PS C:\> $Name = 'HR'
PS C:\> $ContentType = 'xml'
PS C:\> Get-AzureKeyVaultKey -VaultName $VaultName -Name $Name -IncludeVersions | Update-AzureKeyVaultSecret -ContentType $ContentType
前三个命令定义用于 VaultName、Name 和 ContentType 参数的字符串变量。 第四个命令使用 Get-AzureKeyVaultKey cmdlet 获取指定的密钥,并将密钥通过管道传递给 Update-AzureKeyVaultSecret cmdlet,以将其内容类型设置为 XML。
参数
-Confirm
提示你在运行 cmdlet 之前进行确认。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ContentType
机密的内容类型。 如果未指定,则机密内容类型的现有值保持不变。 通过指定空字符串删除现有内容类型值。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DefaultProfile
用于与 Azure 通信的凭据、帐户、租户和订阅。
类型: | IAzureContextContainer |
别名: | AzureRmContext, AzureCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Enable
如果存在,则启用机密(如果值为 true)。 如果值为 false,则禁用机密。 如果未指定,则机密已启用/禁用状态的现有值保持不变。
类型: | Nullable<T>[Boolean] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Expires
机密的过期时间(UTC 时间)。 如果未指定,则机密过期时间的现有值保持不变。
类型: | Nullable<T>[DateTime] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-InputObject
Secret 对象
类型: | PSKeyVaultSecretIdentityItem |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-Name
机密名称。 Cmdlet 从保管库名称(当前选定的环境和机密名称)构造机密的 FQDN。
类型: | String |
别名: | SecretName |
Position: | 1 |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-NotBefore
无法使用机密的 UTC 时间。 如果未指定,则机密的 NotBefore 属性的现有值保持不变。
类型: | Nullable<T>[DateTime] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PassThru
默认情况下,Cmdlet 不返回对象。 如果指定了此开关,则返回 Secret 对象。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Tag
表示机密标记的哈希表。 如果未指定,则机密的现有标记保持不变。 通过指定空哈希表来删除标记。
类型: | Hashtable |
别名: | Tags |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-VaultName
保管库名称。 Cmdlet 基于名称和当前所选环境构造保管库的 FQDN。
类型: | String |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Version
机密版本。 Cmdlet 从保管库名称(当前选定的环境、机密名称和机密版本)构造机密的 FQDN。
类型: | String |
别名: | SecretVersion |
Position: | 2 |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
参数:InputObject (ByValue)