Azure - IP过滤器取决于数据库

时间:2012-11-13 16:20:39

标签: sql security azure filter ip

我有一个Azure应用程序,它使用不同服务器的不同数据库。这个数据库是独立的,我的应用程序的每个扇区只使用一个数据库。 我尝试制作一个IP过滤器。此过滤器必须标识请求者的IP,并允许访问每个数据库或不依赖此过滤器。这为我提供了一种允许访问A而不是B访问IP,访问B而不是A访问另一个IP,完全访问另一个不同IP的方法...使用Azure的安全性。 这可能吗?

谢谢,我等了回答!

PD:对不起我糟糕的英语!

2 个答案:

答案 0 :(得分:0)

假设您指的是SQL Azure托管数据库,您可以使用数据库级防火墙设置,这些设置记录在案here

  

使用。创建数据库级防火墙规则   sp_set_database_firewall_rule存储过程。添加新防火墙   通过在中指定唯一名称来设置基于Internet的连接   存储的sp_set_database_firewall_rule的name参数   程序。使用指定该范围内所需的最低IP地址   start_ip_address参数和最高的所需IP地址   使用end_ip_address参数的范围。 name参数是   nvarchar数据类型以及start_ip_address和end_ip_address   参数是varchar数据类型。

     

同样,您可以通过Windows Azure启用连接尝试   使用sp_set_database_firewall_rule存储过程   参数start_ip_address和end_ip_address等于0.0.0.0。

答案 1 :(得分:0)

我相信你已经找到了一个解决方案,因为它已经有几个月的历史了,但只是在案例......

假设我正确理解,您有许多客户端与您的应用程序服务器进行通信,而应用程序服务器又会查询许多数据库服务器中的一个。 mellamokb建议的防火墙不是一个选项,因为客户端实际上没有访问数据库,因此需要在应用程序服务器上使用。

根据客户端的IP地址选择用于访问/ a数据库的连接字符串可能就是您在此处所需的内容。如果您还需要使用其本机安全性锁定数据库,则需要为每个客户端创建一个命名用户帐户。

或者,您可以调查Azure SQL数据库上的Federations,并使用客户端的IP地址或类似的标识符作为分发密钥。