Azure Active Directory easy auth /.auth/me 的权限错误返回 401

2024-02-29

我有一个 Python Flask 应用程序,我使用 Azure Easy Auth (Azure Active Directory) 作为应用程序服务。登录机制运行良好。不过,我想要登录用户的信息,即姓名、电子邮件等。为此,我知道我们可以致电http://xyz.contoso.com/.auth/me http://xyz.contoso.com/.auth/me这将返回所需的数据。但是,当我从 Web 应用程序发送 get 请求时,它不起作用并且返回 401,您没有查看此目录或页面的权限。如果我使用浏览器浏览到同一页面,它会返回有关登录用户的数据。我错过了什么吗?


您可以访问http://xyz.contoso.com/.auth/me http://xyz.contoso.com/.auth/me通过浏览器,因为您已经验证了会话。但是如果你从Web应用程序发送get请求,你将没有权限。

但是,您可以从标头中获取用户信息。应用服务通过使用特殊标头将用户声明传递到您的应用程序。外部请求不允许设置这些标头,因此它们仅在由应用服务设置时才存在。一些示例标头包括:

X-MS-客户端-主体名称

X-MS-客户端-主体-ID

参考:

访问用户声明 https://learn.microsoft.com/en-us/azure/app-service/app-service-authentication-how-to#access-user-claims

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure Active Directory easy auth /.auth/me 的权限错误返回 401 的相关文章

随机推荐