我试图不让我的用户在登录一次后使用该应用程序时一次又一次地登录,为此我尝试生成刷新令牌(已经拥有 accessToken 和授权代码以及 idToken,使用身份验证代码流程),并使用刷新令牌刷新访问令牌。
我怀疑是否可以在不使用后端服务器或不使用身份验证流程和 PKCE 的情况下生成刷新令牌,或者如果我需要后端,那么如何处理它。或者还有其他方法可以阻止已登录的用户再次登录吗?有人可以帮我吗?
为此,我注册了一个天蓝色应用程序并从那里获取了该应用程序的凭据。从azure的文档链接到azure文档我发现只有两种类型的可用流:隐式流和授权代码授予。 在隐式流程的文档中提到更喜欢身份验证流程,因此我决定遵循这一点并使用身份验证代码流程,但现在我陷入了如何获取刷新令牌以供进一步使用的困境。
理想情况下,您应该使用 OAuth 2.0 授权代码流程。不再建议 SPA 应用使用隐式流。
您无法配置刷新令牌的生命周期。您无法减少或延长它们的寿命。 在条件访问中配置登录频率,以定义要求用户再次登录之前的时间段。有关更多信息,请参阅使用条件访问配置身份验证会话管理。
并非所有刷新令牌都遵循令牌生命周期策略中设置的规则。具体来说,单页应用程序中使用的刷新令牌始终固定为 24 小时的活动,就好像它们应用了 24 小时的 MaxAgeSessionSingleFactor 策略一样。