本地访问已验证用户Azure Functions

f3temu5u  于 2023-06-24  发布在  其他
关注(0)|答案(1)|浏览(136)

我正在使用Typescript中的Azure Functions构建SPA。我通过我的B2C进行身份验证设置。我有两个应用程序注册-一个用于SPA,另一个用于Azure Functions。我正确配置了我的作用域,并在Azure中为我的Azure函数配置了身份验证提供程序。
一切都运转良好;但是,我目前正在尝试在本地运行Azure函数并访问经过身份验证的用户。我可以看到context.req.headers.authorization是定义的;但context.req.user未定义。在本地运行时,我是否缺少了什么?

const httpTrigger: AzureFunction = async function (context: Context): Promise<void> {
  const id = context.req.headers['X-MS-CLIENT-PRINCIPAL-ID']; // undefined
  const user = context.req.user; // undefined
  ...
}
{
  "bindings": [
    {
      "authLevel": "Anonymous",
      "type": "httpTrigger",
      "direction": "in",
      "name": "req",
      "methods": [
        "get",
        "post"
      ]
    },
    {
      "type": "http",
      "direction": "out",
      "name": "res"
    }
  ],
  "scriptFile": "../dist/config/index.js"
}

我希望定义context.req.user,或者有其他方式访问经过验证的用户信息。

bnlyeluc

bnlyeluc1#

X-MS-CLIENT-PRINCIPAL-ID头部由App Service基于token设置。更多信息:https://learn.microsoft.com/en-us/azure/app-service/configure-authentication-user-identities#access-user-claims-in-app-code

相关问题