Microsoft。Identity.Web 是一组 NuGet 包,可简化向与Microsoft 标识平台集成的应用程序添加身份验证和授权。 每个包都针对特定的使用场景,因此您只需安装应用程序所需的包。 本文介绍可用的包,并帮助你选择正确的包。
核心包
这些包提供身份验证和令牌管理的基本功能。
| Package | 说明 |
|---|---|
| Microsoft。Identity.Web | ASP.NET Core Web 应用和 Web API 的主包。 启用登录、令牌验证和调用下游 API。 |
| Microsoft。Identity.Web.UI | 为 ASP.NET Core Web 应用(包括登录和注销控制器和视图)提供 UI 组件。 |
| Microsoft.Identity.Web.TokenAcquisition | 用于在机密客户端应用程序(ASP.NET Core和.NET SDK)中获取令牌的更高级别的 API。 自动处理令牌管理。 |
| Microsoft。Identity.Web.TokenCache | 用于 MSAL.NET 机密客户端应用程序的令牌缓存序列化程序。 支持内存中、分布式和基于会话的缓存。 |
凭据管理包
这些包处理不同的身份验证凭据类型。
| Package | 说明 |
|---|---|
| Microsoft.Identity.Web.Certificate | 用于 MSAL.NET 的证书管理功能,包括从Azure 密钥保管库和本地存储加载证书。 |
| Microsoft.Identity.Web.Certificateless | 无需证书的身份验证方案,例如受管标识和工作负载身份联合。 |
下游 API 和集成包
这些包可帮助你调用受保护的 API 并与Azure服务集成。
| Package | 说明 |
|---|---|
| Microsoft.Identity.Web.DownstreamApi | 用于使用自动令牌管理从机密客户端应用程序调用下游保护 API 的更高级别的接口。 |
| Microsoft。Identity.Web。Azure | 通过提供 TokenCredential 实现,使 ASP.NET Core Web 应用和 Web API 能够将Azure SDK与Microsoft 标识平台配合使用。 |
| Microsoft。Identity.Web.OWIN | 在 .NET Framework 上启用 ASP.NET Web 应用(OWIN/Katana)和 Web API 以使用Microsoft 标识平台。 |
Microsoft Graph 软件包
这些包提供与Microsoft Graph的集成,用于调用Microsoft 365服务。
| Package | 说明 |
|---|---|
| Microsoft.Identity.Web.GraphServiceClient | Microsoft Graph 集成,使用 Graph SDK v5 及更高版本。 建议用于新项目。 |
| Microsoft。Identity.Web.GraphServiceClientBeta | 使用 Microsoft Graph Beta 的 Graph SDK v5 及更高版本进行集成。 使用此包访问预览功能。 |
| Microsoft。Identity.Web.MicrosoftGraph | Microsoft Graph 集成使用 Graph SDK v4。 对新项目使用 GraphServiceClient 包。 |
| Microsoft。Identity.Web.MicrosoftGraphBeta | 使用 Microsoft Graph Beta 集成 Graph SDK v4。 |
高级场景包
这些包支持专用身份验证方案。
| Package | 说明 |
|---|---|
| Microsoft。Identity.Web.Diagnostics | 用于诊断和日志记录以支持排查身份验证问题。 |
| Microsoft.Identity.Web.OidcFIC | 云联合身份凭据(FIC)提供方实现。 启用跨云身份验证方案。 |
| Microsoft.Identity.Web.AgentIdentities | 适用于代理身份方案的辅助方法,包括构建自主代理和 Copilot 集成。 |
选择合适的套餐
使用以下示例安装与应用程序方案匹配的包。
登录用户的 Web 应用程序
对于使用 Microsoft Entra ID 登录用户的 ASP.NET Core Web 应用,请安装核心包和 UI 包:
dotnet add package Microsoft.Identity.Web
dotnet add package Microsoft.Identity.Web.UI
受保护的 Web API
对于验证来自经过身份验证的调用方令牌的 ASP.NET Core Web API,请安装核心包:
dotnet add package Microsoft.Identity.Web
守护程序应用程序和后台服务
对于无需用户交互即可获取令牌的守护程序应用或后台服务,请安装令牌获取包:
dotnet add package Microsoft.Identity.Web.TokenAcquisition
调用Microsoft Graph
对于新项目,请使用 Graph SDK v5 包:
dotnet add package Microsoft.Identity.Web.GraphServiceClient
如果项目使用 Graph SDK v4,请改为安装以前的集成包:
dotnet add package Microsoft.Identity.Web.MicrosoftGraph
使用Azure SDK
若要使用Microsoft 标识平台对Azure SDK客户端进行身份验证,请安装Azure集成包:
dotnet add package Microsoft.Identity.Web.Azure
调用自定义下游 API
若要使用自动令牌管理调用自己的受保护 API,请安装下游 API 包:
dotnet add package Microsoft.Identity.Web.DownstreamApi
代理和协助操作场景
若要生成自治代理或 copilot 集成,请安装代理标识包:
dotnet add package Microsoft.Identity.Web.AgentIdentities
OWIN 应用程序(.NET框架)
对于 .NET Framework 上的 ASP.NET Web 应用和 Web API(OWIN/Katana),请安装 OWIN 包:
dotnet add package Microsoft.Identity.Web.OWIN