【问题标题】:Harden the security between Azure Web Apps and Azure SQL Database加强 Azure Web Apps 和 Azure SQL 数据库之间的安全性
【发布时间】:2018-07-12 14:31:34
【问题描述】:

出于安全考虑,我计划不允许 Azure 服务与 Azure 服务进行通信,但只允许它使用的服务。

例如,我有一些使用 Azure SQL 数据库的 Web 应用程序。我应该只在 Azure SQL 服务器防火墙中添加 Azure Web Apps 的出站 IP 地址吗?

还是我需要做点别的?

【问题讨论】:

    标签: azure azure-sql-database azure-web-app-service


    【解决方案1】:

    这并不像应该的那么容易。 SQL Azure 不是为虚拟网络友好而设计的,因此您唯一的选择是“允许所有 Azure 服务”或硬编码 IP。但是,除非您的 Web 应用程序具有静态 IP,否则如果不为获取 IP 地址更改的数据库编写自定义更新程序,这将是不可能的。

    您可以在 VM 上安装 SQL 服务器并使用虚拟专用网络,否则,请确保登录凭据是安全的,并接受来自任何人的 Azure 客户端都可能尝试连接到您的数据库服务器的事实。

    【讨论】:

    【解决方案2】:

    锁定 SQL 数据库的最佳方法是使用 AAD 集成和Managed Service Identities。 Azure 将为您的应用程序预配 AAD 身份,并且只有在该应用程序中运行的代码才能为该身份生成访问令牌。然后您可以将其配置为AAD user in your SQL Server

    这具有从应用程序中删除密码的(大)额外好处,因此您不必使用客户端密码或 SQL 登录名/密码来配置您的应用程序。

    您还可以运行 App on a VNet,并将 SQL 防火墙配置为仅允许使用 Virtual Network service Endpoints For Azure SQL Database 从该 VNet 进行访问。

    或者使用更新更好的Private Link for Azure SQL Database

    【讨论】:

    • 托管身份是一个不错的步骤,但您仍然需要网络安全。不幸的是,除非您的应用服务与您的数据库位于同一区域,否则虚拟网络服务端点不起作用,因此在测试/玩具应用程序之外没有用处。
    • 这就是服务端点已被专用链接取代的原因之一,这实际上将服务置于 VNet 上的 IP 后面。 docs.microsoft.com/en-us/azure/private-link 用更新的替代方案更新了答案。
    【解决方案3】:

    在这种情况下可以考虑的一些保护与 sql 数据库连接的方法是 -

    1. 正如您所提到的,您已经在考虑配置防火墙以将允许的 IP 地址列入白名单。防火墙可以在sql server级别和数据库级别进行配置(我们可以使用SSMS在数据库级别配置防火墙)。

    2. 我们可以加密数据。当然,这将是静态加密。好消息是连接到数据库的应用程序无需更改即可查询加密数据。

    3. 第三种方式是传统方式(即使我们没有使用 azure db),我们将通过创建用户/角色/权限来防止未经授权的访问。

    4. 我发现 Azure db 提供的一个非常好的功能是威胁检测功能。如果您打开它,我们将收到有关当前数据库/服务器设置可能存在的漏洞的通知。还有我们可以在哪里进行改进以解决这些问题。

    【讨论】:

      【解决方案4】:
      1. 使用专用终结点和 VNET 集成将 Azure 函数与 SQL DB 连接起来。您的应用服务需要是标准的或高级的。即使是高级功能计划也可以。这个LINK 谈论它。
      2. 使用托管标识在 SQL DB 上验证 azure 函数。有关如何执行此操作的信息,请参阅此链接。 Managed identities

      【讨论】:

        【解决方案5】:

        总之是的。

        您可以通过从 Web 应用程序创建 vnet 连接并为 SQL 创建服务端点来提高安全性。我不确定这是否可行,但值得一试。

        【讨论】:

          猜你喜欢
          • 2017-02-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-07-19
          • 2021-12-14
          • 2015-02-15
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多