开发与工程 ✓ Microsoft · 官方 azure-key-vaultcryptographic-keystypescriptnodejsencryptiondigital-signatureskey-rotation

Azure Key Vault 密钥开发技能

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

FollowSkills 评估 · FSRS-2.0
不推荐
38/ 100 五分制 1.9 / 5
信任安全12 / 25 · 2.4/5

文档使用 Azure 身份凭据并建议生产环境采用托管身份、限制 keyOps、软删除和备份,显示出部分最小权限与恢复意识;但示例包含永久 purge、批量导出秘密和写入本地备份,却没有用户确认、敏感数据流披露、权限清单或安全存储约束,因此扣分。未见恶意、凭据窃取或隐蔽外传红线。

可靠稳定5 / 20 · 1.3/5

覆盖创建、读取、轮换、加解密、删除恢复和错误处理,但主 SKILL.md 使用 SecretClient 却未导入,也未安装 @azure/keyvault-secrets;其标题称 Keys 技能却包含大量 Secrets 内容,示例之间还存在认证和配置不一致。没有针对该技能的提交测试或可复现执行证据,故静态评分受限。

适用触发6 / 15 · 2.0/5

目标场景和 TypeScript/Node.js 边界基本明确,且列出密钥管理、密码操作和轮换用途;但实际范围混入秘密管理,未说明不适用场景、输入输出约束、权限前提、算法限制或触发排除条件,也未提供中文或中国大陆网络可达性说明,因此扣分。

规范维护7 / 15 · 2.3/5

有 YAML 元数据、MIT 许可证、安装段落、分层 references、示例、最佳实践和错误处理,且仓库提供 Microsoft provenance、许可证和 CI/维护背景;但版本仅为 1.0.0,没有变更日志、维护责任或更新路径,依赖说明不完整,已知限制和故障排查不足,内容边界也不够稳定。

有效结果5 / 15 · 1.7/5

对常见 Key Vault keys 操作提供了可直接改写的 TypeScript 片段,覆盖面较广;但缺少完整可运行项目、权限配置、输入校验和验证步骤,关键示例存在未导入 SecretClient 和缺少 secrets SDK 依赖等问题,批量秘密导出及 purge 等高风险模式还需要人工审查,因此只能部分完成任务。

证据核验3 / 10 · 1.5/5

文件包含大量 API 示例、类型名、错误状态和仓库 CI/测试基础设施,具备一定审计线索;但提供的 CI 与通用 harness 未显示覆盖此技能的专门测试,文件内没有锁定 SDK 版本、测试结果或第三方执行证据,关键声明无法仅凭静态材料独立复现。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 主技能路径声明为 Keys,但示例和 references 大量涉及 Secrets;若保留 Secrets 内容,应显式添加 @azure/keyvault-secrets 依赖并修正 SecretClient 导入。
  • purge、批量导出秘密和本地写入备份均可能造成不可逆或敏感数据暴露,应增加明确确认、最小权限、安全存储和恢复说明。
  • 建议补充针对该技能的锁版本依赖、权限前提、可运行测试、错误场景和中国大陆网络/服务可达性说明。
查看完整评分方法 →

它能做什么 & 适用场景

这是 Microsoft Agent Skills 集合中的一个 TypeScript 技能,面向 Azure Key Vault Keys SDK(@azure/keyvault-keys)。它提供密钥创建、查询、列出、删除、备份、恢复和轮换的示例,也涵盖加密、解密、签名、验证以及密钥包装和解包。内容还涉及凭据配置、软删除、过期时间、密钥操作限制和 Node.js 运行环境。该技能同时包含 SecretClient 的机密操作示例,但安装命令未列出 @azure/keyvault-secrets,采用前应补充核对依赖与示例完整性。

指导开发者安装 Azure SDK 包并配置 KEY_VAULT_URL 或 AZURE_KEYVAULT_NAME 等环境变量;使用 DefaultAzureCredential 或 ManagedIdentityCredential 创建 KeyClient 和 CryptographyClient;创建 RSA、椭圆曲线或通用密钥,读取、列出、轮换、删除、清除和恢复密钥;设置轮换策略、备份并恢复密钥;使用 RSA-OAEP 加密和解密数据,使用 RS256 签名和验证摘要,并包装或解包密钥材料;示例还展示了机密的设置、读取、列出、删除、清除、恢复和错误处理。

  1. 使用 TypeScript 构建 Azure 后端,需要创建和管理 RSA 或椭圆曲线密钥时。
  2. 需要在 Key Vault 中执行 RSA-OAEP 加密解密或 RS256 签名验证的 Node.js 开发者。
  3. 希望通过轮换策略和过期时间管理生产密钥生命周期的团队。
  4. 需要备份密钥并恢复到同一或其他 Key Vault 的运维或平台工程师。
  5. 需要将本地开发凭据切换为托管身份凭据的 Azure 应用开发者。

优缺点一览

优点
  • 覆盖密钥创建、轮换、加密、签名、备份和恢复等完整生命周期操作。
  • 提供 DefaultAzureCredential、ManagedIdentityCredential 和生产环境凭据配置示例。
  • 明确提出软删除、过期时间、最小化 keyOps 和自动轮换等安全实践。
  • 包含可直接参考的 TypeScript SDK 调用代码。
局限
  • 明确限定为 Node.js,浏览器不受支持。
  • SKILL.md 使用 SecretClient 示例,但前置导入和安装命令未完整展示 @azure/keyvault-secrets。
  • 来源未提供该单项技能的测试覆盖、版本兼容矩阵或故障排查清单。
  • 示例中的过期日期为 2025-12-31,采用时需要按实际生命周期调整。

如何安装

在支持 Agent Skills 的客户端中,将技能目录放入所用 agent 的技能目录;该技能路径为 .github/plugins/azure-sdk-typescript/skills/azure-keyvault-keys-ts/SKILL.md。安装整个集合可运行:npx skills add microsoft/skills,然后在向导中选择需要的技能。项目依赖示例为:npm install @azure/keyvault-keys @azure/identity。SKILL.md 未提供独立的单技能安装命令。

如何使用

触发示例:请使用 azure-keyvault-keys-ts 指导我在 TypeScript Node.js 应用中创建一个 P-256 密钥,并配置 Azure 身份认证和轮换策略。随后按技能中的 KeyClient、CryptographyClient、DefaultAzureCredential 或 ManagedIdentityCredential 示例实现所需操作。浏览器环境不受支持。

常见问题

这个技能适合浏览器端 TypeScript 应用吗?
不适合。SKILL.md 明确说明这些 SDK 仅支持 Node.js,浏览器不受支持。
生产环境应使用哪种身份凭据?
技能建议生产环境使用 ManagedIdentityCredential 或 WorkloadIdentityCredential;若使用 DefaultAzureCredential,则需要设置 AZURE_TOKEN_CREDENTIALS=prod 或指定凭据。
使用机密示例还需要安装什么?
SKILL.md 的机密示例使用 SecretClient,但安装命令只列出 @azure/keyvault-keys 和 @azure/identity,因此应额外核对并安装 @azure/keyvault-secrets。
它是否会自动轮换密钥?
技能展示了手动 rotateKey,以及通过 updateKeyRotationPolicy 设置轮换策略;实际自动轮换行为取决于 Azure Key Vault 配置和策略执行。

同仓库的其他 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