执行 Oauth2 授权代码流时,第一步是将用户定向到要进行身份验证的授权终结点,标识提供者将使用身份验证代码进行响应。 然后,可以通过调用 MSCL PublicClientApplication.acquireToken(AuthorizationCodeParameters) 或 ConfidentialClientApplication.acquireToken(AuthorizationCodeParameters) 来兑换令牌的身份验证代码。
授权 URL 生成器
从 MSAL4J 1.4 版本开始,新增了一个辅助方法 getAuthorizationRequestUrl,可用于构造 OAuth2 授权代码流程第一步中使用的授权代码 URL。
PublicClientApplication publicClientApplication =
PublicClientApplication
.builder(CLIENT_ID)
.authority(AUTHORITY)
.build();
AuthorizationRequestUrlParameters parameters =
AuthorizationRequestUrlParameters
.builder(interactiveRequestParameters.redirectUri().toString(),
interactiveRequestParameters.scopes())
.codeChallenge(verifier)
.codeChallengeMethod("S256")
.state(state);
.build();
URL authorizationCodeUrl = publicClientApplication.getAuthorizationRequestUrl(parameters);