技能 Azure.Identity (.NET)
📦

Azure.Identity (.NET)

安全

在 .NET 中验证 Azure 服务

验证 Azure 服务需要理解复杂的令牌流程和凭据类型。本技能提供关于使用 Azure.Identity 在 .NET 应用程序中实现安全认证的清晰指导,包括托管标识、服务主体和用户凭据。

支持: Claude Codex Code(CC)
🥉 73 青铜
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“Azure.Identity (.NET)”。 How do I use DefaultAzureCredential in my .NET app?

预期结果:

DefaultAzureCredential 按顺序尝试多种认证方法:托管标识、Visual Studio、Visual Studio Code、Azure CLI 和环境变量。在本地开发和使用托管标识的生产环境中使用它。

```csharp
using Azure.Identity;

var credential = new DefaultAzureCredential();
var token = await credential.GetTokenAsync(new TokenRequestContext(new[] { "https://vault.azure.net/.default" }));
```

正在使用“Azure.Identity (.NET)”。 What is the difference between ManagedIdentityCredential and ClientSecretCredential?

预期结果:

ManagedIdentityCredential 使用分配给 Azure 资源的标识(无需密钥),非常适合 App Service、Functions 和 AKS。ClientSecretCredential 使用具有应用程序 ID 和密钥的 Azure AD 服务主体,适用于本地开发或无法使用托管标识的场景。

安全审计

安全
v1 • 2/24/2026

This is a documentation-only skill providing guidance on the Azure.Identity .NET library. Static analysis found no executable code, no suspicious patterns, and no security issues. The skill is purely informational about Microsoft's official Azure SDK authentication library.

0
已扫描文件
0
分析行数
0
发现项
1
审计总数
未发现安全问题
审计者: claude

质量评分

38
架构
100
可维护性
87
内容
50
社区
100
安全
83
规范符合性

你能构建什么

实施 Azure 认证的云开发者

构建需要向 Azure 服务(如 Key Vault、Blob Storage 或 Cosmos DB)进行认证的 .NET 应用程序的开发人员

配置托管标识的 DevOps 工程师

为在 Azure App Service 或 Azure Kubernetes Service 上运行的应用程序设置认证的 DevOps 工程师

审查认证代码的安全工程师

审查 .NET 代码以确保正确的 Azure 认证模式和凭据处理的安全专业人员

试试这些提示

Azure.Identity 入门
如何在 .NET 应用程序中使用 Azure.Identity 库向 Azure 服务进行认证?解释不同的凭据选项以及何时使用每一种。
使用托管标识
展示如何为在 Azure App Service 上运行的 ASP.NET Core 应用程序配置和使用托管标识认证。
服务主体认证
如何在生产 .NET 应用程序中使用 ClientSecretCredential 进行服务主体认证?包括安全存储凭据的最佳实践。
高级令牌缓存
在高扩展性 .NET 应用程序中为 Azure.Identity 实现令牌缓存。展示如何减少认证调用并正确处理令牌刷新。

最佳实践

  • 使用 DefaultAzureCredential 实现最简单的设置,可在开发和生产环境中运行
  • 在生产环境中始终使用托管标识,避免在代码或环境变量中存储密钥
  • 为认证失败实施正确的错误处理,并为临时错误实现重试逻辑

避免

  • 将 Azure 客户端密钥存储在提交到版本控制的源代码或配置文件中
  • 在多个应用程序中使用相同的服务主体而没有适当的范围划分
  • 忽略令牌过期且未实施适当的令牌缓存或刷新逻辑

常见问题

什么是 Azure.Identity?
Azure.Identity 是 Microsoft 的 .NET 库,为 Azure 服务提供认证抽象。它简化了从 Azure AD 获取访问 Azure 资源的令牌的过程。
DefaultAzureCredential 和 ManagedIdentityCredential 有什么区别?
DefaultAzureCredential 自动尝试多种认证方法。ManagedIdentityCredential 专门使用运行代码的 Azure 资源的系统分配或用户分配标识。
我可以将 Azure.Identity 用于本地应用程序吗?
是的,您可以为本地应用程序使用 ClientSecretCredential 或 InteractiveBrowserCredential,但托管标识仅适用于 Azure 资源。
如何在 Azure.Identity 中处理认证错误?
捕获 AuthenticationFailedException 以获取无效凭据,捕获 RequestFailedException 以解决 Azure 资源访问问题。使用 ExponentialBackoff 实现临时失败的重试逻辑。
Azure.Identity 与 Azure AD 相同吗?
不是,Azure AD(现为 Microsoft Entra ID)是身份提供商。Azure.Identity 是简化与 Azure AD 认证以获取访问令牌的客户端库。
Azure.Identity 支持令牌缓存吗?
是的,Azure.Identity 内置令牌缓存支持。对于高级场景,您可以使用 TokenCacheCredential 实现自定义令牌缓存,或使用 Microsoft.Identity.Web 处理更复杂的场景。

开发者详情

文件结构

📄 SKILL.md