使用Azure Python SDK进行用户身份验证的首选方法是什么?

问题描述 投票:0回答:1

我正在尝试学习Azure,所以我认为我创建了一个简单的程序来学习。

我在确定最好的身份验证方法时遇到了麻烦。我考虑过要拥有服务主体证书,但似乎必须将这些文件存储在计算机上的文件或源代码中。因此,这似乎并不理想,因为那时我需要保护它们。我认为对于证书也是如此,也就是说,它们需要安全地存储在我的计算机上。从用户那里读取用户名/密码是一种选择,但这似乎是旧代码。所以我很好奇验证用户身份的首选方法是什么。

在我的情况下,该用户将具有机密的读取/列出权限以及创建服务主体凭据的能力。

python azure authentication
1个回答
0
投票

[是的,使用服务主体凭据/证书登录到Azure仅适用于service to service call而不是用户。

[如果要登录用户,并且用户有权调用Microsoft Graph API,通常应使用Azure AD OAuth 2.0 code流用于登录用户。在此流中,用户将需要从Azure AD向request an auth code输入用户名和密码,并将此代码用于get an access token,以便他们可以access resources进行请求。

有关代码的详细信息,您可以直接参考this sample。在此示例中,您将遍历OAuth2.0流程并调用Microsoft Graph API以获取当前用户的基本信息(graphcall方法)。

如果我的理解是正确的,您希望用户可以管理Azure AD应用程序,包括读取/列出机密和抵制应用程序。您可以使用Microsoft Graph API或Azure AD Graph API来做到这一点。

[如果有任何不清楚的地方,请随时告诉我。

© www.soinside.com 2019 - 2024. All rights reserved.