使用Azure功能的第三方身份验证提供程序

时间:2017-02-14 20:44:09

标签: azure authentication azure-functions azure-authentication

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

我想使用像Auth0这样的第三方提供商,因为目前B2C存在一些局限性和问题,似乎只能非常缓慢地进行。无论如何,我不确定我应该如何为此配置我的功能。我进入了身份验证/授权设置刀片,我已经设置了应用服务身份验证" to" on"," Token Store" to" On"和"请求未经过身份验证时要执行的操作"设置为"允许匿名请求(无操作)"。在"认证提供商"所有这些都设置为"未配置'。我的第一个问题是,在这个阶段,如果我使用Postman调用我的任何函数,我可以在没有任何身份验证信息的情况下调用它们。这好像他们完全没有受到保护。

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

或者我是否以错误的方式思考这个问题?是否允许解决方案允许对我的函数进行未经身份验证的访问,但在函数本身中执行我的令牌验证/等,而不是依赖于Microsoft在幕后验证请求的任何内容(例如,当您使用B2C时)?

1 个答案:

答案 0 :(得分:2)

您的最终想法是标记,如果您带来了App Service身份验证不支持的第三方身份验证提供程序,最佳选择是允许未经身份验证的访问并自行验证请求。

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

更新:应用服务身份验证确实带有您自己的身份验证提供商'在积压的情况下,希望这种情况很快得到更好的支持。