【问题标题】:connect azure function to b2c将 azure 函数连接到 b2c
【发布时间】:2018-09-21 11:23:35
【问题描述】:

所以,我创建了 azure b2c 目录,并在其中创建了像 https://github.com/Azure-Samples/active-directory-b2c-javascript-msal-singlepageapp 这样的应用程序,并在一般 azure 目录中创建了 azure 函数,该函数假设读取 blob 并返回 json 文件。我还创建了用于登录的自定义登录页面。 我在本地运行我的程序,我可以登录,而不是调用在 github 中使用的 API,我调用 azure 函数并且它可以工作。 但现在我想保护对功能的访问,所以我将 authLevel 设为“用户”并尝试通过 Azure Active Directory 进行身份验证。 而且无论我如何进行设置,或者因为我没有权限而无法连接,或者因为我没有权限而无法使用功能。 我也收到此错误请求中指定的客户端 ID '/.auth/login/aad/callback' 未在租户''中注册。”

我应该如何将函数连接到 b2c,以便只有授权用户才能访问函数响应。

【问题讨论】:

    标签: azure-active-directory azure-functions azure-ad-b2c


    【解决方案1】:

    为您的 Azure Functions 应用设置 B2C 身份验证实际上非常简单:

    1. 创建 Azure Functions 应用并记下 URL

    例如https://myazurefunctions.azurewebsites.net(确保将其设为 HTTPS URL)

    1. 在 Azure Active Directory B2C 中配置您的应用程序:

    2. 获取登录策略的元数据端点 URL

      • 如果您打开登录策略的详细信息,您会在顶部找到它。例如:

    3. 在您的 Functions App 中,选择左下角的“Function app settings”并转到“Configure authentication”:

    4. 开启身份验证并选择 Azure Active Directory:

    1. 选择高级设置并输入以下值:

      客户端 ID:您在步骤 2 中复制的应用程序 ID。 颁发者 URL:步骤 3 中的元数据端点 URL。

    2. 保存设置即可!

    【讨论】:

    • 问题:我可以登录 Azure 功能,但它给我的错误是“您无权查看此目录或页面。”
    • 使用新的“用户流(策略)”,必须对此答案进行一些小的更改。我无法将它们都添加到这里,所以请在此页面上查看我的帖子。
    • 如果我只想保护我的函数应用中的一些函数并链接到 B2c,我该怎么做
    【解决方案2】:

    对于新的“用户流程(策略)”,必须对所选答案进行一些小的更改:

    执行以下步骤 3 以获取“元数据端点 URL”: a) 转到您的 B2C 租户并单击用户流(策略)。 b) 选择您的登录(或注册登录)流程,然后单击“运行用户流程”。 c) 您的“元数据端点 URL”显示在新窗口的顶部 - 位于“运行用户流程”标题的正下方。

    执行以下步骤 4 和 5 以配置“身份验证”: a) 转到您的函数应用程序并单击您的函数应用程序(而不是您的函数应用程序中的一个函数)。 b) 单击平台功能,然后单击身份验证/授权。 c) 打开“应用服务认证”。选择“使用 Azure Active Directory 登录”,然后单击“Azure Active Directory - 已配置(高级)”。

    继续第 6 步。

    【讨论】:

      猜你喜欢
      • 2018-01-24
      • 1970-01-01
      • 2021-02-20
      • 1970-01-01
      • 2019-10-12
      • 1970-01-01
      • 1970-01-01
      • 2019-10-16
      • 2019-06-29
      相关资源
      最近更新 更多