Set Secret - Set Secret
在指定的密钥保管库中设置机密。
SET作将机密添加到 Azure 密钥保管库。 如果命名机密已存在,则 Azure Key Vault 会创建该机密的新版本。 此作需要机密/设置权限。
PUT {vaultBaseUrl}/secrets/{secret-name}?api-version=2025-07-01
URI 参数
| 名称 | 在 | 必需 | 类型 | 说明 |
|---|---|---|---|---|
|
secret-name
|
path | True |
string pattern: ^[0-9a-zA-Z-]+$ |
机密的名称。 您提供的值可能会全局复制,以便运行服务。 提供的值不应包括个人身份信息或敏感信息。 |
|
vault
|
path | True |
string (uri) |
|
|
api-version
|
query | True |
string minLength: 1 |
要用于此操作的 API 版本。 |
请求正文
| 名称 | 必需 | 类型 | 说明 |
|---|---|---|---|
| value | True |
string |
机密的值。 |
| attributes |
机密管理属性。 |
||
| contentType |
string |
密钥值的类型,例如密码。 |
|
| tags |
object |
以键值对的形式提供特定于应用程序的元数据。 |
响应
| 名称 | 类型 | 说明 |
|---|---|---|
| 200 OK |
请求已成功。 |
|
| Other Status Codes |
意外的错误响应。 |
安全性
OAuth2Auth
类型:
oauth2
流向:
implicit
授权 URL:
https://login.microsoftonline.com/common/oauth2/authorize
作用域
| 名称 | 说明 |
|---|---|
| https://vault.azure.net/.default |
示例
SetSecret
示例请求
PUT https://myvault.vault.azure.net//secrets/crpsecret?api-version=2025-07-01
{
"value": "mysecretvalue"
}
示例响应
{
"value": "mysecretvalue",
"id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441",
"attributes": {
"enabled": true,
"created": 1493938459,
"updated": 1493938459,
"recoveryLevel": "Recoverable+Purgeable"
}
}
定义
| 名称 | 说明 |
|---|---|
|
Deletion |
反映当前保管库中机密当前有效的删除恢复级别。 如果它包含“可清除”,则特权用户可以永久删除该密钥;否则,只有系统可以在保留间隔结束时清除机密。 |
| Error | |
|
Key |
密钥保管库错误异常。 |
|
Secret |
机密管理属性。 |
|
Secret |
由值、id 及其属性组成的密钥。 |
|
Secret |
密钥集参数。 |
DeletionRecoveryLevel
反映当前保管库中机密当前有效的删除恢复级别。 如果它包含“可清除”,则特权用户可以永久删除该密钥;否则,只有系统可以在保留间隔结束时清除机密。
| 值 | 说明 |
|---|---|
| Purgeable |
表示保管库状态,在该状态下,删除是不可逆的作,无法恢复。 此级别对应于没有针对删除作的保护;在实体级别或更高级别(保管库、资源组、订阅等)接受删除作时,数据将不可挽回地丢失。 |
| Recoverable+Purgeable |
表示删除可恢复的保管库状态,并且还允许立即和永久删除(即清除)。 此级别保证已删除实体在保留间隔(90 天)内的可恢复性,除非请求清除作或取消订阅。 如果未恢复,系统将在 90 天后永久删除它 |
| Recoverable |
表示一种保管库状态,在这种状态下,删除是可恢复的,而无法立即和永久删除(即清除)。 此级别可保证在保留间隔(90 天)期间以及订阅仍然可用时已删除实体的可恢复性。 如果未恢复,系统将在 90 天后永久删除它 |
| Recoverable+ProtectedSubscription |
表示保管库和订阅状态,在该状态下,删除可在保留间隔(90 天)内恢复,不允许立即和永久删除(即清除),并且订阅本身无法永久取消。 如果未恢复,系统将在 90 天后永久删除它 |
| CustomizedRecoverable+Purgeable |
表示可恢复删除的保管库状态,并且还允许立即和永久删除(即,当 7 <= SoftDeleteRetentionInDays < 90 时清除)。 此级别可保证已删除实体在保留时间间隔内的可恢复性,除非请求清除作或取消订阅。 |
| CustomizedRecoverable |
表示一种保管库状态,在该状态下,删除是可恢复的,但无法立即和永久删除(即,当 7 <= SoftDeleteRetentionInDays < 90 时清除)。此级别可保证在保留时间间隔内以及订阅仍可用时已删除实体的可恢复性。 |
| CustomizedRecoverable+ProtectedSubscription |
表示保管库和订阅状态,在该状态下,删除是可恢复的,不允许立即和永久删除(即清除),并且在 7 <= SoftDeleteRetentionInDays < 90 时无法永久取消订阅本身。 此级别保证了已删除实体在保留间隔内的可恢复性,并且还反映了订阅本身无法取消的事实。 |
Error
| 名称 | 类型 | 说明 |
|---|---|---|
| code |
string |
错误代码。 |
| innererror |
密钥保管库服务器错误。 |
|
| message |
string |
错误消息。 |
KeyVaultError
密钥保管库错误异常。
| 名称 | 类型 | 说明 |
|---|---|---|
| error |
密钥保管库服务器错误。 |
SecretAttributes
机密管理属性。
| 名称 | 类型 | 说明 |
|---|---|---|
| created |
integer (unixtime) |
创建时间(UTC)。 |
| enabled |
boolean |
确定是否启用对象。 |
| exp |
integer (unixtime) |
到期日期(UTC)。 |
| nbf |
integer (unixtime) |
不早于UTC日期。 |
| recoverableDays |
integer (int32) |
softDelete 数据保留天数。 启用 softDelete 时,值应为 >=7 和 <=90,否则为 0。 |
| recoveryLevel |
反映当前保管库中机密当前有效的删除恢复级别。 如果它包含“可清除”,则特权用户可以永久删除该密钥;否则,只有系统可以在保留间隔结束时清除机密。 |
|
| updated |
integer (unixtime) |
最后更新时间(UTC)。 |
SecretBundle
由值、id 及其属性组成的密钥。
| 名称 | 类型 | 说明 |
|---|---|---|
| attributes |
机密管理属性。 |
|
| contentType |
string |
机密的内容类型。 |
| id |
string |
密钥 ID。 |
| kid |
string |
如果这是支持 KV 证书的密钥,则此字段指定支持 KV 证书的相应密钥。 |
| managed |
boolean |
如果机密的生存期由密钥保管库管理,则为 true。 如果这是支持证书的机密,则托管将为 true。 |
| previousVersion |
string |
上一个证书的版本(如果适用)。 仅适用于 2025 年 6 月 1 日之后创建的证书。 在此日期之前创建的证书不会追溯更新。 |
| tags |
object |
以键值对的形式提供特定于应用程序的元数据。 |
| value |
string |
密钥值。 |
SecretSetParameters
密钥集参数。
| 名称 | 类型 | 说明 |
|---|---|---|
| attributes |
机密管理属性。 |
|
| contentType |
string |
密钥值的类型,例如密码。 |
| tags |
object |
以键值对的形式提供特定于应用程序的元数据。 |
| value |
string |
机密的值。 |