gpt4 book ai didi

azure - MSAL token 将在 1 小时后过期

转载 作者:行者123 更新时间:2023-12-05 00:51:19 33 4
gpt4 key购买 nike

我在 Xamarin 应用中使用 MSAL 进行 Azure AD 身份验证。 token 的有效期为 1 天(使用 AuthenticationResult 的 ExpiresOn 值查看)。我的问题是,1 小时后,AcquireTokenSilentAsync 失败,然后需要调用 AcquireToken。

我无法理解,尽管 token 有效期是 1 天,刷新 token 的有效期更长,但为什么每隔 1 小时就要求进行身份验证?可以使用任何参数值或任何其他方式更改它吗?

最佳答案

稍微澄清一下,MSAL 实际上并不颁发 token 或决定 token 过期,而是从 Azure AD STS 获取获取 token 。

调用 AcquireTokenSilentAsync 时,MSAL 将在过期后自动刷新您的访问 token 。由于某种 token 缓存未命中,您可能无法获得自动静默刷新。如果没有看到您的代码,很难说出具体问题,但我建议将其与 official MSAL Xamarin code sample 进行比较。

如果您正在构建 Xamarin 应用程序,那么它就是公共(public)客户端。目前默认的 token 过期时间是:

访问 token : 1 小时

刷新 token : 90 天,14 天不活动滑动窗口

Azure AD 允许您在 PowerShell 中配置这些 token 过期时间。您可以定义 token 生命周期策略,然后将其分配给跨租户/组织或应用程序对象的特定服务主体。另一件需要记住的事情是,如果您正在请求特定资源的 token ,则必须在该资源上设置策略,而不是在请求的服务主体或应用程序上设置策略。有关详细信息,请查看 configuring token lifetime in Azure AD .

关于azure - MSAL token 将在 1 小时后过期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44518731/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com