强制使用Azure AD

时间:2019-05-09 08:11:56

标签: passport.js msal

我正在为我的后端使用Passport-ad库来保护我的端点。如何确定承载访问令牌是新的(例如,发布时间在一定阈值之内?)

对于使用MSAL的前端,什么是在用户尝试访问敏感信息时强制重新认证的最佳实践?

1 个答案:

答案 0 :(得分:0)

提示是一个可选参数,当客户端将用户引导到/authorize端点时,您可以在授权代码流中包括该参数。提示指示用户所需的交互类型。在MSAL.NET中,可以从以下提示中进行选择:

  • SelectAccount->强制STS显示帐户选择对话框,其中包含用户要进行会话的帐户列表 Consent->强制提示用户征求同意,即使先前已授予同意
  • ForceLogin->即使没有必要,服务也会始终提示用户输入凭据(我说的是“强制重新认证”时,这就是您想要的凭据)
  • NoPrompt->不发送提示值,STS将根据先前的会话确定向用户显示哪个UI

例如:

https://login.microsoftonline.com/{tenant}/oauth2/v2.0/authorize?
scope=offline_access+openid+profile
&client_id=37efsf6-14a6-44ae-97bc-6eba6916741e
&response_type=code
&redirect_uri=http%3A%2F%2Flocalhost%3A12345
&response_mode=query
&resource=https%3A%2F%2Fservice.contoso.com%2F
&state=12345
&prompt=login

更多信息here