azure - 将第三方身份验证提供程序与 Azure Functions 结合使用

标签 azure authentication azure-functions azure-authentication

所以我之前是使用B2C进行身份验证。我已经配置了我的功能,以便它们需要通过 B2C 进行身份验证,并且一切正常。如果您尝试在未经身份验证的情况下调用他们,则不会发生任何事情(或者更确切地说,您收到错误)。

我想使用第三方提供商,例如 Auth0,因为目前 B2C 存在一些限制和问题,这些限制和问题似乎只能非常缓慢地得到解决。无论如何,我不确定应该如何为此配置我的功能。我转到“身份验证/授权设置”边栏选项卡,并将“应用程序服务身份验证”设置为“打开”,将“ token 存储”设置为“打开”,并将“请求未经身份验证时采取的操作”设置为“允许匿名”请求(无行动)”。在“身份验证提供程序”下,所有这些都设置为“未配置”。我的第一个问题是,在这个阶段,如果我使用 Postman 调用任何函数,我可以在没有任何身份验证信息的情况下很好地调用它们。就像如果他们完全没有受到保护。

我不确定应该设置什么,以便我的功能需要通过第三方进行身份验证,而不是通过 5 个默认列出的提供商进行身份验证。

或者我的想法是错误的?解决方案是否是允许未经身份验证的访问我的函数,但在函数本身中进行我的 token 验证/等,而不是依赖 Microsoft 在幕后所做的任何事情来验证请求(例如当您使用 B2C 时)? p>

最佳答案

您的最终想法是正确的,如果您使用应用服务身份验证不支持的第 3 方身份验证提供商,则最好的选择是允许未经身份验证的访问并自行验证请求。

但是,请记住,任何输入绑定(bind)都将在函数代码执行(并且发生身份验证验证)之前运行,因此您需要小心使用输入绑定(bind)和自定义身份验证。

<小时/>

更新:应用服务身份验证确实有“自带身份验证提供程序”的待办事项,因此希望这种方案很快能得到更好的支持。

关于azure - 将第三方身份验证提供程序与 Azure Functions 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42235843/

相关文章:

Azure应用服务: Deployment Source missing options [radio vs dropdown]

windows - 设置azure windows vm默认分辨率以运行selenium脚本

security - SSL登录结构

java - jaxrs - 拦截器返回状态 500 时抛出错误

azure - 无法从应用程序见解导出完整日志信息

c# - Azure Web 应用程序中的 "Could not create SSL/TLS secure channel"

Azure辅助角色陷入未知角色状态

google-chrome - 如何使用 FIDO U2F 允许用户通过我的网站进行身份验证?

python - 如何使用 azure 函数编辑 azure blob 存储中的 *.csv 文件?

azure - 捕获所有异常