Использование тегов служб с Power BI

Теги службы Azure можно использовать с Power BI, чтобы включить Управляемый экземпляр SQL Azure (MI), чтобы разрешить входящие подключения из служба Power BI. В Azure тег службы — это определенная группа IP-адресов, которую можно настроить для автоматического управления в качестве группы, чтобы свести к минимуму сложность обновлений или изменений в правилах безопасности сети. Используя теги службы с Power BI, можно позволить Управляемому экземпляру SQL разрешать входящие подключения из службы Power BI.

Следующие конфигурации необходимы для успешного включения конечных точек в служба Power BI.

  1. Включите общедоступную конечную точку в Управляемый экземпляр SQL.
  2. Создайте правило группы безопасности сети, чтобы разрешить входящий трафик.
  3. Введите учетные данные в Power BI.

В следующих разделах показано, как это сделать.

Включение общедоступной конечной точки

Первая часть процесса — включить общедоступную конечную точку в Управляемый экземпляр SQL. Выполните следующие шаги:

  1. Войдите в портал Azure и перейдите к Управляемый экземпляр SQL.

  2. В левой части страницы выберите "Сеть".

  3. Общедоступная конечная точка слайда (данные) для включения, а затем установите для минимальной версии TLS значение1.2. На следующем рисунке показан экран в портал Azure.

    Screenshot of Azure portal to enable public endpoints.

  4. Нажмите кнопку Save (Сохранить), чтобы сохранить настройки.

Создание правила группы безопасности сети

Следующая коллекция шагов требует создания правила группы безопасности сети (NSG), чтобы разрешить входящий трафик для служба Power BI. Это действие можно выполнить в портал Azure, используя тег исходной службы Power BI или используя интерфейс командной строки (CLI) или PowerShell.

Примечание.

Приоритет заданного правила должен быть выше правила 4096 deny_all_inbound , что означает, что значение приоритета должно быть ниже 4096. В следующем примере используется значение приоритета 400.

Приведенный ниже скрипт CLI представлен в качестве эталонного примера. Дополнительные сведения см. в статье az network nsg rule. Возможно, потребуется изменить несколько значений, чтобы пример работал правильно в вашей ситуации. Затем будет предоставлен скрипт PowerShell.

#login to azure
az login

#set subscription that contains SQL MI instance
$subname = "mysubscriptionname"
az account set --subscription $subname

#set NSG rule for inbound PowerBI traffic

#update $RG to your resource group name
$rg = 'myresourcegroup'
#update $nsg to your Network Security Group name
$nsg = 'nsgresourcename'
# Name the NSG rule
$rule = 'allow_inbound_PowerBI'
#set the priority - this must be higher priority (lower number) than the deny_all_inbound rule
$priority = 400
#specifiy the service tag to use
$servicetag = 'PowerBI'
#specify the public endpoint port defined in step 1
$port = 3342
#set the rule to inbound direction
$direction = 'Inbound'
#set the access type to "Allow"
$access = 'Allow'
#Set the protocol as TCP
$protocol = 'tcp'
#Provide a description for the rule
$desc = 'Allow PowerBI Access to SQL MI for Direct Query or Data Refresh.'
 
#create the NSG rule
az network nsg rule create -g $rg \
--nsg-name $nsg -n $rule --priority $priority \
--source-address-prefixes $servicetag --destination-address-prefixes '*' \
--destination-port-ranges $port --direction $direction --access $access \
--protocol $protocol --description $desc

Следующий скрипт PowerShell предоставляется в качестве другой ссылки на создание правила NSG. Дополнительные сведения см. в разделе "Добавление правила группы безопасности сети" в PowerShell. Возможно, потребуется изменить несколько значений, чтобы пример работал правильно в вашей ситуации.

#login to azure
Login-AzAccount

#get your subscription ID
Get-AzSubscription

####
#Script to create Network Security Group Rule
###

#enter your subscription ID
Set-AzContext -SubscriptionId "yoursubscriptionID" 

#Provide the resource group for your Network Security Group
$RGname="yourRG"
#Enter the port for the SQL Managed Instance Public Endpoint
$port=3342
#name the NSG rule
$rulename="allow_inbound_PowerBI"
#provide the name of the Network Security Group to add the rule to
$nsgname="yourNSG"
#set direction to inbound to allow PowerBI to access SQL MI
$direction ="Inbound"
#set the priority of the rule. Priority must be higher (ie. lower number) than the deny_all_inbound (4096)
$priority=400
#set the service tags for the source to \u201cPowerBI\u201d
$serviceTag = "PowerBI"

# Get the NSG resource
$nsg = Get-AzNetworkSecurityGroup -Name $nsgname -ResourceGroupName $RGname

# Add the inbound security rule.
$nsg | Add-AzNetworkSecurityRuleConfig -Name $rulename -Description "Allow app port" -Access Allow `
    -Protocol * -Direction $direction -Priority $priority -SourceAddressPrefix $serviceTag -SourcePortRange * `
    -DestinationAddressPrefix * -DestinationPortRange $port

# Update the NSG.
$nsg | Set-AzNetworkSecurityGroup 

Введите учетные данные в Power BI

Последняя часть процесса — ввод учетных данных в служба Power BI.

  1. Войдите в служба Power BI и перейдите в рабочую область, содержащую наборы данных, использующие Управляемый экземпляр SQL. В следующем примере эта рабочая область называется ASAdataset , а набор данных называется Contoso SQL MI Demo.

  2. Выберите Параметры в правом верхнем углу, а затем выберите Параметры в раскрывающемся меню.

    Screenshot of the settings dropdown menu.

  3. В разделе "Наборы данных" разверните раздел учетных данных источника данных.

    Screenshot of the edit credentials option in the Datasets tab.

  4. Выберите ссылку "Изменить учетные данные". В появившемся диалоговом окне введите допустимые учетные данные.

Сохраните параметры и закройте его. Теперь Управляемый экземпляр SQL настроено для разрешения входящих подключений из служба Power BI.