如何在 Azure 函数中重用来自应用服务的 AD 身份验证?

How to reuse AD authentication from app service in azure function?

我正在尝试利用内置的 Azure App Service / Function AD 身份验证进行访问控制。我想对应用程序服务(这是一个 UI SPA 应用程序)和功能(HTTP 触发器)使用相同的身份验证,以便用户只需登录一次。我的函数应用程序是一个 node.js 函数。

我不需要授权,即我只想让某些用户使用应用服务和功能,但他们都有完全访问权限。

我有一个使用 AD 身份验证设置的应用程序服务,只需从门户启用 AD 身份验证并使用正确的 AD 应用程序选择 "express" 模式,它就可以很好地工作。 AD 应用已启用隐式身份验证流程。

问题出在功能上。如何为该功能重用应用服务(即单页前端应用)中的用户身份验证状态?

现在我可以使用 AAD MSAL 获取身份验证令牌,但我似乎无法使用它访问该功能。似乎有十几种使用 auth 的方法(X-ZUMO、OAuth bearer 等)也于事无补。

总而言之,我只想限制对 SPA 网络应用程序(应用程序服务)和功能的访问,以便用户只需登录一次。我可以在函数中实现身份验证代码,但如果我可以在不触及函数代码的情况下将其用于 Work(tm),那就更好了。

假设您已经为您的 Web 应用程序设置了 Easy Auth,您需要做的就是将您的函数应用程序添加为允许的受众。

更多信息: