gpt4 book ai didi

c# - Python 等效于 C# ADAL AuthenticationContext.AcquireToken

转载 作者:行者123 更新时间:2023-11-28 20:59:27 24 4
gpt4 key购买 nike

我正在关注 tutorial用于通过 AAD 对 Power BI REST API 进行身份验证。

本教程使用 C# 和 ADAL。它通过以下方式获取 token ,

AuthenticationContext authContext = new AuthenticationContext(authorityUri);
string token = authContext.AcquireToken(resourceUri, clientID, new Uri(redirectUri)).AccessToken;

我更愿意使用 Python,因此我尝试使用 ADAL library for Python .

我可以通过以下方式获取身份验证上下文

context = adal.AuthenticationContext(authority_url)

但我找不到与 AcquireToken 等效的 Python ADAL 函数。最近的选项似乎是 context.acquire_token 但这需要我提供一个 user_id arg,而 C# 版本没有(它也不接受重定向 URI arg)。

如何在 Python 中获得与在教程的 C# 代码中相同的行为?

最佳答案

获取 token 函数的用法在 ADAL Python 中略有不同。在 ADAL Python 中,您必须知道要遵循哪个身份验证流程,然后使用适当的获取 token 调用。您可以在此 Azure AD article 中找到与应用程序类型和拓扑相关的不同身份验证流程。以及在这些 samples 中对 python 的不同获取 token 调用的使用

从你上面提到的场景,你可以使用这个auth code flow样本。它需要一个客户端密码,但 token 是在用户以交互方式登录后授予的。

如果您仍然希望在不提供客户端密码的情况下进行交互流程,您可以引用 device code flow样本。但是,设备代码流主要用于没有自己的交互式 Web 界面的纯文本设备。用户可以使用具有交互式 Web 界面的另一台设备进行登录。

关于c# - Python 等效于 C# ADAL AuthenticationContext.AcquireToken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49539048/

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