使用Azure App Service身份验证/授权时,有两种方法可以使此项工作:
- 在功能应用程序的AAD配置中分配默认资源。
- 使用AAD 代表流程将您的ID令牌(
x-ms-token-aad-id-token
)交换为MS Graph访问令牌。
不需要任何代码更改的最简单方法是执行#1。我在我的App Service Auth和Azure AD Graph
API博客文章(需要一些更新)中概述了该过程,但是在这里我将为您提供Microsoft Graph的经过功能优化的版本。
您需要做的主要事情是:
- 确保您的AAD设置包括一个客户机密(您已经有此密码)。
- 确保您的AAD设置具有访问Microsoft Graph的权限(您已经完成了此操作)。
- 在资源浏览器中打开函数应用程序(使用门户网站中 平台设置 下的链接),导航至左侧面板上的 config / authsettings ,
"additionalLoginParams"
从更改null
为["resource=https://graph.microsoft.com"]
,然后保存更改。
完成此操作并再次登录后,
x-ms-token-aad-access-token请求标头将始终为您提供与Microsoft Graph一起使用的访问令牌。
上述方法的缺点是,如果您需要从功能应用程序访问多个受AAD保护的资源,那么它无济于事。如果这对您来说是个问题,那么您将需要使用上面的方法2。



