从应用程序中向 Azure Functions 进行身份验证

Authenticate to Azure Function from within App

我正在为我的 Azure Function 应用程序使用 Facebook 身份验证,如果我在浏览器中导航到一个函数,它工作正常。我想从应用程序中调用我的功能,但不确定如何执行身份验证。

目前我正在尝试使用 Facebook 客户端,这个 returns 我一个 access_token 然后我转发到我的函数应用程序中的“.auth/login/facebook/callback”函数。不幸的是,这是我所能得到的,通过 GET returns HTML 和 JavaScript 执行此操作,并通过 POST 重定向回 Facebook。

我真正需要的是 azure 函数 AppServiceAuthSession 创建的 cookie,我相信我可以用它来调用函数。

编辑:我认为我不能只使用 cookie,就像我上面说的那样,所以我需要正确验证。

尼克。

我能够在使用 Facebook Javascript SDK 时获得传递给函数应用程序的令牌(我在 C# SDK 上没有任何运气)——也许这会让你进入正确的方向。

客户:

  1. 执行 Facebook 登录,return是 accessToken
  2. 客户需要用这个 accessToken 换一个 'App Service Token'。它通过 POST 到 https://{app}.azurewebsites.net/.auth/login/facebook 和内容 { "access_token" : "{token from Facebook}" } 来实现。这将 return 返回一个 authenticationToken.
  3. 在名为 x-zumo-auth 的 header 中使用那个 authenticationToken。使用 header.
  4. 向您的函数应用发出所有请求

在您的函数应用程序中,您应该将当前主体设置为该登录用户。