你当前正在访问 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

输入

PSKeyVaultSecretIdentityItem

参数:InputObject (ByValue)

输出

PSKeyVaultSecret