Utiliser des étiquettes de service avec Power BI

Vous pouvez utiliser des étiquettes de service Azure avec Power BI pour permettre à une instance managée Azure SQL d’autoriser les connexions entrantes à partir du service Power BI. Dans Azure, une étiquette de service est un groupe défini d’adresses IP que vous pouvez configurer pour qu’elles soient gérées automatiquement, en tant que groupe, afin de réduire la complexité des mises à jour ou des changements des règles de sécurité réseau. En utilisant des étiquettes de service avec Power BI, vous pouvez activer une instance managée SQL pour autoriser les connexions entrantes à partir du service Power BI.

Les configurations suivantes sont nécessaires pour pouvoir activer les points de terminaison à utiliser dans le service Power BI :

  1. Activer un point de terminaison public dans l’instance managée SQL.
  2. Créez une règle de groupe de sécurité réseau pour autoriser le trafic entrant.
  3. Entrez les informations d’identification dans Power BI.

Les sections suivantes examinent chacune de ces étapes successivement.

Activer un point de terminaison public

La première partie du processus consiste à activer un point de terminaison public dans l’instance managée SQL. Procédez comme suit :

  1. Connectez-vous au portail Azure et accédez à votre instance managée SQL.

  2. Dans la partie gauche de la page, sélectionnez Mise en réseau.

  3. Faites glisser point de terminaison public (données) sur Activer, puis définissez la version TLS minimale sur 1.2. L’image suivante montre l’écran dans le portail Azure.

    Screenshot of Azure portal to enable public endpoints.

  4. Sélectionnez Save (Enregistrer) pour enregistrer vos paramètres.

Créer une règle de groupe de sécurité réseau

Le prochain groupe d’étapes nécessite la création d’une règle de groupe de sécurité réseau (NSG) pour autoriser le trafic entrant du service Power BI. Cette action peut être effectuée sur le portail Azure en tirant parti de l’étiquette de service source de Power BI ou en recourant soit à l’interface de ligne de commande (CLI), soit à PowerShell.

Remarque

La priorité de la règle que vous définissez doit être supérieure à la règle deny_all_inbound 4096, c’est-à-dire que la valeur de la priorité doit être inférieure à 4096. Dans l’exemple suivant, la valeur de priorité 400 est utilisée.

Le script CLI suivant est fourni comme exemple de référence. Pour plus d’informations, consultez az network nsg rule. Vous devrez peut-être changer plusieurs valeurs pour que l’exemple fonctionne correctement dans votre situation. Un script PowerShell est fourni par la suite.

#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

Le script PowerShell suivant est fourni comme autre référence pour créer la règle de groupe de sécurité réseau (NSG). Pour plus d’informations, consultez Ajouter une règle de groupe de sécurité réseau dans PowerShell. Vous devrez peut-être changer plusieurs valeurs pour que l’exemple fonctionne correctement dans votre situation.

#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 

Entrer les informations d’identification dans Power BI

La dernière partie du processus consiste à entrer les informations d’identification dans le service Power BI.

  1. Connectez-vous au service Power BI et accédez à l’espace de travail contenant le ou les jeux de données qui utilisent l’instance managée SQL. Dans l’exemple suivant, cet espace de travail s’appelle ASAdataset et le jeu de données s’appelle Contoso SQL MI Demo.

  2. Sélectionnez Paramètres dans le coin supérieur droit, puis choisissez Paramètres dans le menu déroulant.

    Screenshot of the settings dropdown menu.

  3. Sous Jeux de données, développez la section Informations d’identification de la source de données.

    Screenshot of the edit credentials option in the Datasets tab.

  4. Sélectionnez le lien Modifier les informations d’identification. Dans la boîte de dialogue qui s’affiche, entrez des informations d’identification valides.

Enregistrez vos paramètres et quittez. Votre instance managée SQL est maintenant configurée pour autoriser les connexions entrantes à partir du service Power BI.