【问题标题】:Configuring Azure SQL Server firewall - is allowing all IP's to connect a red flag?配置 Azure SQL Server 防火墙 - 是否允许所有 IP 连接红旗?
【发布时间】:2016-07-12 07:05:49
【问题描述】:

我刚刚创建了我的第一个 Azure SQL Server 和数据库,现在正在尝试配置防火墙,以便我的 Web 应用程序可以连接并更改服务器上的单个数据库。

我看到您可以通过允许以下规则来允许所有客户端连接:

但是,这是不好的做法吗?我看到我的客户端 IP 地址列在 Azure 门户中 我能否澄清一下我现在应该只允许单个 IP 地址访问,然后当我将我的 Web 应用程序发布到 Azure 时,我将获得一个 IP 地址web 应用程序存在并且仅限制对其的访问(假设人们只能通过我的前端应用程序进行数据库更改)。

谢谢

【问题讨论】:

    标签: azure firewall azure-sql-database azure-sql-server


    【解决方案1】:

    是的,这是不好的做法。他们还必须通过其他层(例如,服务器登录),但这会打开前门并允许任何人在闲暇时挑选它。

    如果您有一个 Web 服务器在某个服务器上托管您的 Web 应用程序(您必须是),将该服务器的 IP 地址(也可能是您自己的,用于开发/管理目的)列入白名单,但允许所有 IP 并不被认为是好的做法,没有。

    您可能确实希望允许这样做的一个特殊情况是,如果您将桌面应用程序分发给必须连接到后端的未知客户端。在这一点上它变得非常诱人,但即便如此,推荐的做法(或至少,我推荐的做法)将是使用一个 Web 服务,该服务将在应用程序启动时接受应用程序注册,通过该服务临时注册客户端 IP ,然后有一个后台服务器(想想WebJobs),它将刷新防火墙规则,例如,每晚左右(或者对于更复杂的设置,接受超时注册并使用连续的WebJob来轮询超时和刷新/必要时撤销)

    【讨论】:

    • @Pipeline 很高兴为您提供帮助。请记住,安全性由许多层组成,为了充分发挥作用,它们都应该受到尽可能合理的限制。虽然这本身并不一定允许人们轻松破解您的数据库,但他们必须通过的一层少了!
    • 一个 azure 应用服务有一个动态 ip 地址 - 有什么方法可以在 ip 更改时更新防火墙,或者让 azure 专门允许这个应用服务?我目前只是使用带有用户/密码的连接字符串来访问数据库。
    猜你喜欢
    • 2021-06-18
    • 1970-01-01
    • 1970-01-01
    • 2019-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-05
    相关资源
    最近更新 更多