我在Microsoft网站上的Azure AD B2C文档页面中关注了此示例https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-devquickstarts-web-dotnet-susi。它工作正常,但问题是访问令牌有一个小时的生命周期,在那个小时后用户需要重新登录。我不想延长access_token生命周期,但想在access_token过期之前刷新令牌。我怎样才能做到这一点?
源代码可在此处找到:https://github.com/Azure-Samples/active-directory-b2c-dotnet-webapp-and-webapi
答案 0 :(得分:0)
MSAL库(用于交换示例中令牌的代码)自动调用Azure AD B2C端点以将refresh_token交换为新的access_token。你不应该处理它。
答案 1 :(得分:0)
从您关联的文章中,我了解到您正在尝试添加登录到您的应用。如果登录是您唯一的目标,那么您就不需要使用access_token。在您想要使用访问令牌调用API /服务之前,不需要与获取访问令牌相关的代码。出于登录的目的,id_token应该足够了。
话虽如此,id_token也有一小时的生命周期。要扩展会话,您有几个选择:
您可以在此blog post中详细了解这些方法和权衡。
答案 2 :(得分:0)
IIRC没有选项可以从库中自动更新自动续订但是您可以采用多种方法来实现这一目标...简单的一个来自JavaScript