Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用Powershell为PAAS服务器添加具有ip地址的防火墙规则_Sql_Azure - Fatal编程技术网

Sql 使用Powershell为PAAS服务器添加具有ip地址的防火墙规则

Sql 使用Powershell为PAAS服务器添加具有ip地址的防火墙规则,sql,azure,Sql,Azure,我有Azure环境,我必须将防火墙规则添加到不同订阅的全通服务器中。 所有订阅的服务器名称和资源组都不同。 例如:企业\开发人员订阅 Server RESOURCE GROUP SUBSCRIPTION caddvsql11 DwDvRg01 Enterprise Dev/Test caduasql11 DwUtRg01 Enterprise Dev/

我有Azure环境,我必须将防火墙规则添加到不同订阅的全通服务器中。 所有订阅的服务器名称和资源组都不同。 例如:企业\开发人员订阅

Server              RESOURCE GROUP           SUBSCRIPTION
caddvsql11           DwDvRg01                Enterprise Dev/Test
caduasql11           DwUtRg01                Enterprise Dev/Test
cmspcsql01          CmsPcRg01                Enterprise Dev/Test
quomosql11          QuoMoRg11                Enterprise Dev/Test



Set-AzureRmContext  "Enterprise\dev " 

new-AzureRmSqlServerFirewallRule -ResourceGroupName "DwDvRg01" -ServerName "caddvsql11" -FirewallRuleName "SAM_HOME" -StartIpAddress "22.7.180.91"
-EndIpAddress "22.7.180.91"
我可以使用此查询为单个服务器添加ip地址。但我需要在Azure中具有不同服务器和资源组的所有Paas服务器中添加此防火墙规则名称和ip地址。
有人能帮我一下吗。

Set AzureRmContext是旧版本。已迁移到的新Az cmdlet

如果所有资源组都具有相同的订阅ID,则可以扩展您使用的脚本,以便在其余三台服务器上包含防火墙规则

如果它们都在单个订阅上,则需要包括cmdlet(),然后使用cmdlet在订阅之间进行更改


如果您通过Azure门户通过云Shell会话进行连接,则可以使用Set-AzContext在订阅之间切换。如果从桌面环境运行并且需要先进行身份验证,则需要Connect-AzaAccount cmdlet

Set-AzureRmContext是旧版本。已迁移到的新Az cmdlet

如果所有资源组都具有相同的订阅ID,则可以扩展您使用的脚本,以便在其余三台服务器上包含防火墙规则

如果它们都在单个订阅上,则需要包括cmdlet(),然后使用cmdlet在订阅之间进行更改


如果您通过Azure门户通过云Shell会话进行连接,则可以使用Set-AzContext在订阅之间切换。如果从桌面环境运行并且需要先进行身份验证,则需要Connect-AzaAccount cmdlet

您可以创建一个包含所有必需输入的简单csv文件,然后使用命令

下面是csv和脚本的快速示例。。可以添加所需的任何其他列,并使用相应命令中的值


您可以创建一个包含所有必需输入的简单csv文件,然后使用命令

下面是csv和脚本的快速示例。。可以添加所需的任何其他列,并使用相应命令中的值


我有不同的订阅,如Enterprise dev\test、Prod、,UAT。这只是一个例子。我有多台服务器,具有不同的资源组,因此无法多次编写此脚本。我正在寻找可以使用参数或将所有服务器名和资源组保存在文件中并相应添加IP地址的脚本。我有不同的订阅,如Enterprise dev\test、Prod、,UAT。这只是一个例子。我有多台服务器,具有不同的资源组,因此无法多次编写此脚本。我正在寻找可以使用参数或将所有服务器名和资源组保存在文件中并相应添加IP地址的脚本。
foreach($rule in import-csv "E:\firewallrules.csv") 
{ 
   Write-Host "Processing item with.. Server="$rule.Server "Resource Group ="$rule.ResourceGroup "Subscription="$rule.Subscription

   # Make use of variables like $rule.Server and so on in your commands here..
}