开发与工程 ✓ 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
信任安全11 / 25 · 2.2/5

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

可靠稳定6 / 20 · 1.5/5

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

适用触发8 / 15 · 2.7/5

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

规范维护8 / 15 · 2.7/5

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

有效结果6 / 15 · 2.0/5

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

证据核验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、软删除、网络访问、轮换失败和备份加密等前置条件与故障处理说明。
查看完整评分方法 →

它能做什么 & 适用场景

该技能面向使用 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 的备份和恢复操作。

优缺点一览

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

如何安装

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

如何使用

在已加载该技能的编码代理中提出诸如“用 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 Identity Python 认证技能

为 Python Azure 应用提供基于 Microsoft Entra ID 的可复用身份认证指导。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

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

开发与工程 ✓ Microsoft · 官方

Azure Tables Python 技能

帮助 Python 开发者使用 Azure Tables 完成安全认证、实体管理、查询与批量事务操作。

开发与工程 ✓ Microsoft · 官方

Azure Identity TypeScript

为 TypeScript Azure 应用配置安全、可切换的 Microsoft Entra ID 身份验证。

自动化与运维 ✓ Microsoft · 官方

Azure 应用可靠性顾问

评估并提升 Azure Functions 与 App Service 的可靠性。

开发与工程 ✓ Microsoft · 官方

Azure 云架构师

帮助编码代理按照 Azure 架构中心最佳实践设计和审查生产级云系统。

开发与工程 ✓ Microsoft · 官方

Azure AI 文本分析 Python 技能

为 Python 开发者提供 Azure 文本分析与自然语言处理集成指导。

自动化与运维 ✓ Microsoft · 官方

Azure 资源架构可视化器

分析 Azure 资源组及其依赖关系,生成详细的 Mermaid 架构图。

开发与工程 ✓ Microsoft · 官方

Azure Maps .NET 开发技能

为 .NET 应用提供地理搜索、路线、地图、定位与天气开发指导。

开发与工程 ✓ Microsoft · 官方

Azure AI Vision 图像分析技能

为 Python 编码代理提供 Azure AI Vision 图像理解实现指南。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Python 技能

帮助 Python 开发者安全高效地操作 Azure Blob Storage。

开发与工程 ✓ Microsoft · 官方

Azure Queue Storage Python 技能

帮助编码代理使用 Python 构建安全、可靠的 Azure Queue Storage 异步消息处理。

自动化与运维 ✓ Microsoft · 官方

Azure AI 网关治理

用 Azure API Management 统一治理 AI 模型、MCP 工具和智能体流量。

自动化与运维 ✓ Microsoft · 官方

AKS Automatic 就绪评估

评估 Kubernetes 工作负载能否迁移到 AKS Automatic,并定位兼容性阻塞项。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB .NET 资源管理技能

用 .NET 通过 ARM 部署和管理 Azure Cosmos DB 资源。

开发与工程 ✓ Microsoft · 官方

Azure Playwright 工作区管理技能

用 .NET 通过 Azure Resource Manager 配置和管理 Microsoft Playwright Testing 工作区。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB Python 技能

帮助 Python 开发者可靠地构建和操作 Azure Cosmos DB NoSQL 应用。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Python SDK 技能

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

开发与工程 ✓ Microsoft · 官方

Azure API Management Python 技能

帮助编码代理使用 Python SDK 管理 Azure API Management 的服务、API、产品、订阅与策略。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Python 技能

帮助 Python 开发者查询 Azure Monitor 日志与指标。

相关 Skills