Windows登录用户的ADAL python支持

时间:2019-04-07 05:59:21

标签: azure adal

我们目前正在使用adal python库,并想知道是否有任何方法(或实施方法的计划)将登录的用户(窗口)用于联合身份验证流。

使用.Net软件包link

这样的流程是可能的

最终目标可能不是acquire_token_with_username_password,而是类似acquire_token_with_signed_in_user的东西?

2 个答案:

答案 0 :(得分:1)

感谢您对这个有价值的问题所做的研究(建议)!

的确,ADAL Python及其表弟MSAL Python均不支持“拾取Windows登录用户并使用它”。该功能称为IWA, traditionally only available in our .Net/C# SDK on Windows platforms。从理论上讲,也可以将其添加到Python中。我们目前尚无路线图,主要是因为以前没有人要求它。从这种意义上讲,请继续create an issue for it in our MSAL Python github repo(和you did),以便世界上的人(或您的配偶)可以投票,然后我们sort them by +1 votes做我们未来的计划。

另一方面,已经有token cache behavior in ADAL Pythonin MSAL Python。如果您利用它,并且还在其上构建自己的持久层(which is very easy in MSAL Python),则可以缓存令牌,以便最终用户不需要每次都进行身份验证。 PS:目前正在进行一些工作,以提供更高级别的令牌缓存持久性帮助程序,但这是一个不同的主题。

也感谢@ mohitdhingra-msft在这里提供了另一个正确的答案。

答案 1 :(得分:0)

您可以使用 acquire_token_with_username_password 方法获取accessToken和refreshToken。根据以下文档,没有这样的方法来获取已登录用户的令牌,但是您可以使用 acquire_token_with_refresh_token 来获取新的访问令牌,方法是使用第一次调用中获得的刷新令牌。您可以使用TokenCache类来缓存accessToken和refreshToken。

Refresh Token in adal pythonhttps://adal-python.readthedocs.io/en/latest/

我希望这会有所帮助。