繁体   English   中英

如何授权保护Azure Function?

[英]How I can protect Azure Function by authorization?

我从创建 API Function 的 Azure function 开始。创建 function 后,我需要保护它。

以前,我使用Microsoft.Identity.Platform来保护 API 的资源,其中我在 Azure AD 中为 API 创建了一个注册,公开了范围,在列表中添加了客户端应用程序以提供对资源的访问。 此外,它需要在客户端应用程序的 Azure AD 注册中确认“ API 权限”。

那么,我能做些什么类似的事情吗?您认为这是一个不错的选择吗?或者是否还有其他选择可供选择?

我读到了 function 密钥,但我读到它对开发有利,对生产不利。

我读到了 function 密钥,但我读到它对开发有利,对生产不利。

正如您在此MS 文档中看到的那样,Microsoft 提到授权密钥和应用服务身份验证非常适合在 Azure 函数中的开发、测试和生产环境等所有阶段保护 HTTP 端点。

此外,还有多种方法可以保护您的 function API,例如使用 APIM(前门 + WAF)来限制传入请求的授权密钥。

我的解决方法之一 72633969显示在限制 function 应用程序无法访问 inte.net 且仅允许来自 APIM 实例的上下文中保护 Azure 函数。

在通过 APIM 保护 Azure Function 应用程序 API 时,我针对上述解决方案遵循的步骤是

  1. 在886982359588 App中创建了一个Http触发器Function。
  2. 在 Azure 886982359588 应用程序门户菜单 > 网络选项卡的访问限制中添加允许的 IP 地址。
  3. 将 API 的授权级别设置为“功能”级别或自定义键值级别,以在添加到 APIM 实例后增加更多安全性。
  4. 在 APIM 实例中添加/导入 Function API 并检查允许的 IP 地址和不允许的 IP 地址(系统):

在此处输入图像描述

上述 Microsoft 文档中提供了有关使用 APIM 实例保护 API 的更多信息。

授权密钥是一种默认的安全机制,如果密钥未在公共应用程序中发布或公开共享,则更好

为了更好的安全机制,为生产环境选择不同的选项。 其他方式请参考上述评论并参考用户@LohithGN提供的MS Q&A Forum 801055

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM