当前位置: 首页 > 知识库问答 >
问题:

Azure AD B2C中的刷新令牌撤销

翟柏
2023-03-14

在我的AD B2C应用程序中,我需要撤销AD B2C为一个用户给出的所有刷新令牌。当用户帐户登录多个应用程序,并且在一个应用程序中用户更改了密码时,这是一个需要实现的要求。当密码被更改时,我已经撤销了他给其他应用程序的所有刷新令牌。怎么做?

更新:
我尝试过以下操作,

解决方案:
刷新令牌撤销图形api正在工作。但这需要大约5分钟。
但这里的问题是在等待期间,我能够获得新的刷新令牌和访问令牌,并且这些新的刷新令牌即使在撤销后也能工作。这意味着Azure AD考虑了refresh token revoke api调用的请求时间,并将在该时间之前发出的所有刷新令牌撤销。
那么如何避免这一情况呢?
当使用现有刷新令牌在脱机作用域中请求新的访问令牌时,为什么Azure AD在现有刷新令牌具有有效时间的情况下仍然提供新的刷新令牌?

共有1个答案

长孙谦
2023-03-14

您可以使用Azure AD Graph API使特定用户的所有刷新令牌无效:

POST https://graph.windows.net/myorganization/users/{user_id}/invalidateAllRefreshTokens?api-version=1.6
 类似资料:
  • 仍然存在,我可以通过它刷新访问令牌。 如果某人有G套件帐户,那么过期时间是否有特殊值,还是保持不变? 根据文档,我最多可以拥有50个令牌,那么有没有其他替代方法,这样我就可以在50个请求后获得有效的令牌。

  • 我在自己的Web API上使用Oauth2,在Web应用程序上使用ASP.NET C#来使用该API。在我的web应用程序上,我正在进行HttpWebRequests。当我的访问令牌过期时,我调用一个方法“refreshToken”,该方法发出请求以获取新的访问令牌。这工作很好,没有问题...除了我得到的响应包含一个新的刷新令牌???我在等新的访问令牌。我甚至认为在没有再次传递凭据的情况下这是不可

  • 授权服务器可以给Web应用客户端和本机应用程序客户端颁发刷新令牌。 刷新令牌在传输和储存时必须保持机密性,并只与授权服务器和刷新令牌被颁发的客户端共享。授权服务器必须维护刷新令牌和它被颁发给的客户端之间的绑定。刷新令牌必须只能使用带有RFC2818定义的服务器身份验证的1.6所述的TLS 传输。 授权服务器必须验证刷新令牌和客户端身份之间的绑定,无论客户端身份是否能被验证。当无法进行客户端身份验证

  • 刷新令牌是用于获取访问令牌的凭据。刷新令牌由授权服务器颁发给客户端,用于在当前访问令牌失效或过期时,获取一个新的访问令牌,或者获得相等或更窄范围的额外的访问令牌(访问令牌可能具有比资源所有者所授权的更短的生命周期和更少的权限)。颁发刷新令牌是可选的,由授权服务器决定。如果授权服务器颁发刷新令牌,在颁发访问令牌时它被包含在内(即图1中的步骤D)。 刷新令牌是一个代表由资源所有者给客户端许可的授权的字

  • 我对oauth2中的刷新令牌有点困惑。如它所说的访问令牌限制了黑客可以使用用户凭证的1小时的时间窗口,刷新令牌是万岁令牌,可以用来重新创建访问令牌。 我很困惑,如果有人从cookie中窃取了访问令牌,他也可以窃取刷新令牌,并可以使用刷新令牌创建新的访问令牌,因为我在JQuery中有ajax请求(客户端)

  • 我正在尝试从应用程序服务中获取Google的刷新令牌,但我不能。 日志说 2016-11-04T00:04:25 PID[500]收到的详细请求:获取https://noteappsvr.azurewebsites.net/.auth/login/google?access _ type = offline 2016-11-04t 00:04:25 PID[500]从https://account