gpt4 book ai didi

python - 使用设备代码以交互方式根据 Azure Active Directory 对 python 应用程序进行身份验证

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

from msrestazure.azure_active_directory import AADTokenCredentials
import adal, uuid, time

authority_host_uri = "https://login.microsoftonline.com"
tenant_id = "..."
client_id = "..."
authority_uri = authority_host_uri + '/' + tenant_id
resource_uri = "https://storage.azure.com/"
context = adal.AuthenticationContext(authority_uri, api_version=None)
code = context.acquire_user_code(resource_uri, client_id)
print(code['message'])

mgmt_token = context.acquire_token_with_device_code(resource_uri, code, client_id)
credentials = AADTokenCredentials(mgmt_token, client_id)

尝试使用设备代码以交互方式访问 Azure AD。无论如何,没有弹出窗口,但控制台正确输出代码“要登录,请使用网络浏览器打开页面 https://microsoft.com/devicelogin 并输入代码 EUDR3PTL6 进行身份验证。”

打开网址并输入代码,它输出新错误“AADSTS500113:没有为该应用程序注册回复地址。”

如何获得交互式弹出窗口来输入设备代码或用户凭据以从 Azure AD 获取 token ?

最佳答案

这是设备代码流的预期结果,您需要使用网络浏览器打开页面https://microsoft.com/devicelogin并输入代码 EUDR3PTL6 进行身份验证。

For applications running on devices which don't have a web browser, it's possible to acquire a token through the device code mechanism, which provides the user with a URL and a code. The user goes to a web browser on another device, enters the code and signs-in, and then Azure AD returns back a token to the browser-less device.

您收到 AADSTS500113 错误,因为您没有为您的申请注册回复地址。您需要添加平台并在 azure 门户中提供重定向 url。重定向 url 不用于设备代码流,但它是必需的。

enter image description here

引用:

https://github.com/AzureAD/azure-activedirectory-library-for-python/wiki/Acquire-tokens

关于python - 使用设备代码以交互方式根据 Azure Active Directory 对 python 应用程序进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60517117/

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