C# Azure功能身份验证-是否可以不使用AD?

C# Azure功能身份验证-是否可以不使用AD?,c#,azure,azure-functions,azure-authentication,C#,Azure,Azure Functions,Azure Authentication,我正在努力保护一些Azure功能端点。我试着用证书,但我碰到了一些障碍 在FunctionsStartup(从中派生我的startup)中,我找不到连接AddAuth和Auth方法/类的方法。(我试图搜索,阅读更多关于这个主题的内容,但所有答案都是针对web API或其他类型的身份验证) 我试着至少检查一下证书是否存在,但也没用。我试图从请求上下文连接ClientCertificate获取证书,或者从标头读取证书。未在本地或已部署版本上工作。证书总是空的 我看到有一些选项可以通过广告(也可以通过

我正在努力保护一些Azure功能端点。我试着用证书,但我碰到了一些障碍

  • 在FunctionsStartup(从中派生我的startup)中,我找不到连接AddAuth和Auth方法/类的方法。(我试图搜索,阅读更多关于这个主题的内容,但所有答案都是针对web API或其他类型的身份验证)
  • 我试着至少检查一下证书是否存在,但也没用。我试图从请求上下文连接ClientCertificate获取证书,或者从标头读取证书。未在本地或已部署版本上工作。证书总是空的
  • 我看到有一些选项可以通过广告(也可以通过facebook、google等)来保护它,但首先我很好奇是否有人成功地实现了另一种身份验证方法,更像是在经典的web api方法中(JWT令牌、证书、其他类似的东西)

    允许您定义优先级排序的允许/拒绝列表,以控制对应用程序的网络访问。该列表可以包括
    IP地址
    或Azure
    虚拟网络子网
    。当有一个或多个条目时,列表末尾会出现一个隐式的“拒绝全部”

    此外,当客户端请求通过TLS/SSL时,您还可以请求客户端证书并验证证书。这种机制称为TLS相互身份验证或客户端证书身份验证

    首先,您的应用程序服务计划必须在基本层、标准层、高级层或隔离层中

    其次,启用客户端证书:

    az webapp update --set clientCertEnabled=true --name <app_name> --resource-group <group_name>
    

    az webapp update--set clientCertEnabled=true--name.

    您是否考虑过在您的函数前面添加Azure API管理(在消费层中)?没有,但我会阅读更多内容,看看会出现什么。谢谢你的想法。我认为这将是一个更干净的解决方案,因为它将使锅炉板代码(如auth)不在你的功能范围内。好的,基本上我需要在应用程序服务级别设置证书-然后我可以通过该标题访问它?有趣。今天晚些时候我会试试。谢谢!好啊如果它对你有帮助,请接受它作为答案。单击复选框并将其变为绿色。