用于 Java 的 Microsoft 身份验证库(MSAL Java 或 MSAL4J)将应用程序与Microsoft 标识平台集成。 它允许使用Microsoft标识(Microsoft Entra ID、Microsoft帐户和Azure AD B2C 帐户)登录用户或应用,并获取令牌来调用Microsoft API(如Microsoft Graph或自己的 API)。 MSAL Java使用行业标准 OAuth2 和 OpenID Connect 协议。
概述
- 为何使用 MSAL4J?
- 先决条件:在使用 MSAL4J 之前,必须向Microsoft Entra ID注册应用程序。
- 若要开始使用 MSAL4J,请实例化和配置 客户端应用程序。
- 了解使用 MSAL4J 获取令牌 的方法。
- 遵循 可靠的企业就绪应用程序的最佳做法。
- 有关常见问题和已知 bug,请参阅 常见问题解答 。
MSAL Java 应用场景
应用程序可以使用 MSAL4J 获取令牌来访问受保护的 API。 可以通过不同的 应用程序类型获取令牌:桌面应用程序、Web 应用程序、Web API 和在没有浏览器的设备上运行的应用程序(例如 IoT 设备)。 在 MSAL4J 中,应用程序分类如下:
- 公共客户端应用程序(桌面和移动版)。 这些类型的应用无法安全地存储应用机密。
- 机密客户端应用程序(Web 应用、Web API 和守护程序应用程序) 这些类型的应用安全地存储注册Microsoft Entra ID的机密。
在 客户端应用程序 主题中详细了解如何实例化和配置上述内容。
MSAL4J 支持以用户名称或应用程序本身的名称(没有用户)获取令牌。 在后一种情况下,必须使用机密客户端应用程序。
MSAL4J 可用于在不同操作系统上运行的应用程序(Windows、Linux、macOS)。
MSAL4J 支持的主要场景:
- 登录用户的 Web 应用程序
- 使用户登录并以用户身份调用 Web API 的 Web 应用程序
- 以已登录用户名称调用 Web API 的桌面应用程序
- 不使用用户调用 Web API 的桌面/服务守护程序应用程序
- 不使用浏览器的应用程序,或以用户名称调用 API 的 IOT 应用程序
找不到您要找的场景? 查看 MSAL 库中 支持的方案和平台 。