开发与工程 ✓ Microsoft · 官方 azure-key-vaultjava-sdksecret-managementcredential-managementsecret-rotationsoft-deletebackup-restore

Azure Key Vault Java 机密管理

帮助 Java 开发者安全存储、读取、轮换和恢复 Azure Key Vault 中的应用机密。

FollowSkills 评估 · FSRS-2.0
不推荐
43/ 100 五分制 2.2 / 5
1 2 3 4 5 6
1信任安全11 / 25 · 2.2/5

内容明确涉及 Azure Key Vault 敏感信息,并展示 DefaultAzureCredential、最小权限、软删除、日志和环境变量等安全实践,因此具备部分安全边界;但示例直接打印 secret value、把真实密钥样式值写入代码、批量读取并输出秘密,且 purge、delete、backup 写文件等高影响操作没有用户确认、权限范围、备份保护或回滚说明,扣分较多。

2可靠稳定6 / 20 · 1.5/5

主文档覆盖同步、异步、错误处理和恢复流程,且提供了 references/examples.md;但版本号从 4.9.0 与 4.11.0-beta.1 不一致,若干示例缺少 import,轮询和异步 API 的可用性未由该技能内测试验证,异常输入、重试、幂等性和失败诊断较薄弱。静态校准下未超过 10 分。

3适用触发8 / 15 · 2.7/5

目标场景和触发短语清晰,覆盖存取、轮换、删除、恢复、备份及异步 Java SDK 用法;但未明确不适用场景、所需 Azure 资源/RBAC 配置、网络与区域限制,也没有中文说明或面向中国大陆可达性的适配信息,因此语义边界和环境适配证据有限。

4规范维护8 / 15 · 2.7/5

具备 front matter、MIT 许可、版本字段、安装说明、分节示例、环境变量、最佳实践、错误处理和单独参考文件,结构较易导航;但维护责任、变更记录、SDK/identity 版本兼容矩阵、故障排查和敏感数据安全示例规范不完整,且主文档与参考文档版本漂移。

5有效结果6 / 15 · 2.0/5

对于熟悉 Azure 身份认证且已有 Key Vault 的 Java 开发者,代码覆盖主要 CRUD、版本、轮换、恢复和备份任务,核心价值明确;但示例存在可编译性和版本一致性疑点,安全上不宜直接复制,缺少完整项目配置、RBAC 前置条件和可验证输出。静态校准下核心任务可 plausibly 完成,但仍需较多审查,未超过 7 分。

6证据核验4 / 10 · 2.0/5

代码、依赖坐标、错误类型和操作模式均可审计,且仓库提供通用 CI/测试基础设施;但所给 CI 与测试并未针对该 Key Vault Java 技能的关键路径提供专门覆盖,也没有该技能的执行结果、第三方交叉验证或版本变更记录。静态校准下只能给有限证据分。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 不要直接复制示例中的真实样式秘密或打印 secret value;应使用占位符、避免日志泄露,并限制读取权限。
  • purgeDeletedSecret 是不可恢复操作,执行前应明确用户确认、权限边界和恢复策略。
  • 统一 azure-security-keyvault-secrets 与 azure-identity 版本,并在目标 Java/Maven 环境中编译验证所有示例。
  • 补充 Key Vault、RBAC、软删除、网络访问、轮换失败和备份加密等前置条件与故障处理说明。
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

该技能面向使用 Azure Key Vault Secrets Java SDK 管理敏感配置的开发者。它覆盖密码、API 密钥、连接字符串等字符串机密的创建、读取、属性更新、列举、删除、恢复、永久清除以及备份恢复。内容同时提供同步和异步客户端示例,并展示 DefaultAzureCredential 与托管身份凭据的创建方式。它适合已经使用 Azure Key Vault 的 Java 项目,但不会替代权限配置、网络配置或完整的生产运维方案。

指导代理添加 Maven 依赖 com.azure:azure-security-keyvault-secrets:4.9.0,创建同步或异步 SecretClient,使用 Azure 凭据连接指定 Key Vault,设置和读取最新或指定版本的机密,更新启用状态、过期时间、标签和内容类型等属性,列举机密及其版本,执行软删除、恢复和永久清除,并使用字节数组完成机密备份与恢复。它还给出批量加载机密、版本轮换和 ResourceNotFoundException、HttpResponseException 错误处理示例。

  1. 负责 Java 后端配置的开发者需要将数据库密码、API 密钥或连接字符串从代码和配置文件迁移到 Azure Key Vault。
  2. 维护生产凭据的团队需要创建新版本、禁用旧版本并实现基本的机密轮换流程。
  3. 需要审查或展示 Key Vault 机密元数据的开发者希望列出机密、版本、启用状态和时间戳,而不直接列出值。
  4. 需要处理误删风险的运维或应用团队希望使用软删除、恢复和永久清除 API 管理机密生命周期。
  5. 需要保存或迁移机密全部版本的 Java 应用需要使用 Key Vault 的备份和恢复操作。

这个 Skill 有哪些优点和局限?

优点
  • 覆盖机密的完整生命周期,包括创建、读取、属性更新、版本管理、删除、恢复、清除和备份恢复。
  • 同时提供同步和异步 Java 客户端用法。
  • 包含过期时间、标签、内容类型、软删除、最小权限和访问日志等具体实践建议。
  • 提供批量加载、轮换和常见 HTTP 错误处理模式。
局限
  • 示例依赖已存在且可访问的 Azure Key Vault;未提供资源创建、权限授予或网络隔离步骤。
  • 备份示例会将机密备份写入本地文件,文件保护责任由应用自行承担。
  • README 的测试覆盖统计针对整个仓库,源材料没有证明该单个技能拥有独立测试场景。
  • 示例包含演示用的密码和密钥格式,不能直接当作生产凭据。

如何安装这个 Skill?

运行 npx skills add microsoft/skills,在安装向导中选择 azure-security-keyvault-secrets-java。README 说明技能会安装到所选代理的目录,例如 GitHub Copilot 使用 .github/skills/,并可在多个代理之间建立符号链接。源材料未说明该单个技能的独立安装命令或所需 Azure 资源权限配置。

如何使用这个 Skill?

在已加载该技能的编码代理中提出诸如“用 Java Key Vault Secrets SDK 存储 API key”“读取 Azure Key Vault 中的 connection string”或“实现 secret rotation”之类的请求。代码需要提供 Key Vault 地址,例如 https://<vault-name>.vault.azure.net,并配置 AZURE_KEYVAULT_URL;使用生产环境的 DefaultAzureCredential 时,还需按示例配置 AZURE_TOKEN_CREDENTIALS=prod 或指定凭据。

常见问题

这个技能是否包含 Azure Key Vault 的部署和权限配置?
不包含。它展示客户端认证和调用方式,但没有提供 Key Vault 创建、RBAC 或网络配置步骤。
是否支持异步操作?
支持。SKILL.md 展示了 `SecretAsyncClient` 以及设置、读取和列举机密的响应式调用。
删除机密后还能恢复吗?
在启用软删除的保险库中,示例支持列出已删除机密、恢复机密和永久清除机密;永久清除不可恢复。
使用它需要哪些环境配置?
需要 Key Vault 地址;示例使用 `AZURE_KEYVAULT_URL`。若生产环境采用 `DefaultAzureCredential`,示例还要求配置 `AZURE_TOKEN_CREDENTIALS=prod` 或具体凭据。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Java 密钥管理

为 Java 编码代理提供 Azure Key Vault 与 Managed HSM 密钥管理和密码运算指导。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Secrets Rust 技能

帮助 Rust 应用安全地存取和管理 Azure Key Vault 中的密码、API 密钥与连接字符串。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Python SDK 技能

帮助 Python 编码代理安全管理 Azure Key Vault 中的机密、加密密钥和证书。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault 密钥保管库技能

为 TypeScript 应用安全存取 Azure Key Vault 中的机密,并管理密钥生命周期。

开发与工程 ✓ Microsoft · 官方

Rust Azure Key Vault 证书技能

帮助 Rust 应用在 Azure Key Vault 中创建、管理和使用 X.509 证书。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault 密钥 .NET 技能

帮助 .NET 开发者安全管理 Azure Key Vault 密钥并执行加密操作。

开发与工程 ✓ Microsoft · 官方

Azure AI Projects Java

帮助 Java 开发者管理 Azure AI Foundry 项目资源。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault 密钥开发技能

为 TypeScript 应用提供 Azure Key Vault 密钥创建、加密签名与轮换指导。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

帮助 Java 开发者构建高吞吐、可 checkpoint 的 Azure 事件流应用。

开发与工程 ✓ Microsoft · 官方

Azure CallingServer Java 遗留维护技能

帮助 Java 开发者维护旧版 CallingServer 代码并迁移到 Call Automation。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Java 技能

用 Java 查询 Azure Monitor 日志与资源指标。

开发与工程 ✓ Microsoft · 官方

Azure AI Vision Java 图像分析技能

帮助 Java 开发者快速构建图像描述、OCR、目标检测与智能裁剪应用。

开发与工程 ✓ Microsoft · 官方

Azure 通信服务 Java 身份认证

为 Azure Communication Services Java 应用提供令牌认证、刷新与通信用户标识处理指导。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault 密钥 Rust 技能

指导 Rust 应用安全创建、管理并使用 Azure Key Vault 中的 RSA、EC 和 HSM 密钥。

开发与工程 ✓ Microsoft · 官方

Azure Batch Java 作业编排技能

帮助 Java 开发者在 Azure 上编排大规模并行与 HPC 批处理作业。

开发与工程 ✓ Microsoft · 官方

Azure Tables Java 开发技能

帮助 Java 开发者构建 Azure 表存储与 Cosmos DB 表 API 应用。

开发与工程 ✓ Microsoft · 官方

Azure Monitor Java 日志摄取

帮助 Java 应用通过 DCR 将自定义日志发送到 Azure Monitor。

开发与工程 ✓ Microsoft · 官方

Azure Event Grid Java 技能

帮助 Java 开发者使用 Azure Event Grid 构建事件发布、订阅与接收流程。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Java 技能

帮助 Java 开发者可靠地构建 Azure Blob Storage 文件存储功能。

开发与工程 ✓ Microsoft · 官方

Azure 文档智能 Java 技能

帮助 Java 开发者使用 Azure 文档智能提取和分类文档数据。

相关 Skills