gpt4 book ai didi

azure - 从后台作业获取Token()

转载 作者:行者123 更新时间:2023-12-03 03:14:54 26 4
gpt4 key购买 nike

我正在使用 Azure Active Directory 和 ADAL使用 OAuth 与 Office 365 的 Exchange EWS 交互。

我知道您可以使用authContext.AcquireToken(),它将为您管理所有oauth。它将为您保存、使用和刷新 token ,并在需要时提示用户凭据。在我的例子中,问题是我需要在 Azure 后台 Web 作业中进行交互,因此它无法请求用户凭据。

我尝试的是获取授权代码,使用户从 GetAuthorizationRequestURL() 访问 URL。然后使用 AcquireTokenByAuthorizationCode() 获取 token 并将刷新 token 保存在数据库中。因此,当后台作业需要连接到 EWS 时,它可以通过 AcquireTokenByRefreshToken() 使用刷新 token (保存在数据库中)。

这种方法有效,但我不知道如何在 14 天后过期时获得新的刷新 token 。

知道如何更新刷新 token 或在后台作业中使用 ADAL 的更好方法吗?

感谢和问候!!

最佳答案

这里有一个想法。创建一个请求您的 token 的简单控制台或 win 表单应用程序。在该应用程序中,使用将 token 保存在可移植存储中的自定义缓存(如加密文件,请参阅 https://github.com/AzureADSamples/NativeClient-DotNet )。运行应用程序一次以播种缓存。然后获取该缓存并将其与您的 Web 作业一起部署。现在90天左右你就会没事的。另一种选择是使用用户名/密码流,但这并不是一个好主意,而且它会带来许多重要的限制。

关于azure - 从后台作业获取Token(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29735221/

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