Αυτοματοποιήστε εργασίες χώρου εργασίας και σημασιολογικού μοντέλου Premium με κύριες υπηρεσίες

Οι κύριες υπηρεσίες είναι μια καταχώρηση εφαρμογής Microsoft Entra ID που δημιουργείτε εντός του μισθωτή σας για την εκτέλεση λειτουργιών επιπέδου πόρων και υπηρεσιών χωρίς επιτήρηση. Είναι ένας μοναδικός τύπος ταυτότητας χρήστη με όνομα εφαρμογής, αναγνωριστικό εφαρμογής, αναγνωριστικό μισθωτή και μυστικό κωδικό πελάτη ή πιστοποιητικό για κωδικό πρόσβασης.

Το Power BI Premium χρησιμοποιεί την ίδια λειτουργικότητα κύριας υπηρεσίας με το Power BI Embedded. Για να μάθετε περισσότερα, ανατρέξτε στο θέμα Ενσωμάτωση περιεχομένου Power BI με κύριες υπηρεσίες.

Στο Power BI Premium, μπορείτε να χρησιμοποιήσετε κύριες υπηρεσίες με το τελικό σημείο XMLA (Ανάλυση XML) για να αυτοματοποιήσετε εργασίες διαχείρισης σημασιολογικών μοντέλων, όπως η παροχή χώρων εργασίας, η ανάπτυξη μοντέλων και η ανανέωση σημασιολογικών μοντέλων με:

  • Το PowerShell.
  • Azure Automation.
  • Azure Logic Apps.
  • Προσαρμοσμένες εφαρμογές προγράμματος-πελάτη.

Μόνο οι νέοι χώροι εργασίας υποστηρίζουν συνδέσεις τελικού σημείου XMLA χρησιμοποιώντας κύριες υπηρεσίες. Οι κλασικοί χώροι εργασίας δεν υποστηρίζονται. Μια κύρια υπηρεσία έχει μόνο εκείνα τα δικαιώματα που είναι απαραίτητα για την εκτέλεση εργασιών σε χώρους εργασίας όπου έχει εκχωρηθεί. Τα δικαιώματα εκχωρούνται μέσω πρόσβασης στο χώρο εργασίας, όπως και οι κανονικοί λογαριασμοί UPN (κύριο όνομα χρήστη).

Για την εκτέλεση λειτουργιών εγγραφής, ο φόρτος εργασίας σημασιολογικών μοντέλων των εκχωρημένων πόρων πρέπει να έχει ενεργοποιημένο το τελικό σημείο XMLA για λειτουργίες ανάγνωσης-εγγραφής. Τα σημασιολογικά μοντέλα που δημοσιεύονται από το Power BI Desktop θα πρέπει να έχουν ενεργοποιημένη τη δυνατότητα βελτιωμένης μορφής μετα-δεδομένων .

Δημιουργία οντότητας υπηρεσίας

Οι κύριες υπηρεσίες δημιουργούνται ως καταχώρηση εφαρμογής στην πύλη Azure ή χρησιμοποιώντας το PowerShell. Κατά τη δημιουργία της κύριας υπηρεσίας, φροντίστε να αντιγράψετε και να αποθηκεύσετε ξεχωριστά το όνομα της εφαρμογής, το αναγνωριστικό εφαρμογής (προγράμματος-πελάτη), το αναγνωριστικό καταλόγου (μισθωτή) και τον μυστικό κωδικό προγράμματος-πελάτη. Για τα βήματα σχετικά με τον τρόπο δημιουργίας μιας κύριας υπηρεσίας, ανατρέξτε στο θέμα:

Δημιουργία ομάδας ασφαλείας Microsoft Entra

Από προεπιλογή, οι κύριες υπηρεσίες έχουν πρόσβαση σε οποιεσδήποτε ρυθμίσεις μισθωτή για τις οποίες έχουν ενεργοποιηθεί. Ανάλογα με τις ρυθμίσεις διαχειριστή, η πρόσβαση μπορεί να περιλαμβάνει συγκεκριμένες ομάδες ασφαλείας ή ολόκληρο τον οργανισμό.

Για να περιορίσετε την πρόσβαση της κύριας υπηρεσίας σε συγκεκριμένες ρυθμίσεις μισθωτή, μπορείτε να επιτρέψετε την πρόσβαση σε συγκεκριμένες ομάδες ασφαλείας. Εναλλακτικά, μπορείτε να δημιουργήσετε μια αποκλειστική ομάδα ασφαλείας για τις κύριες υπηρεσίες και να την εξαιρέσετε από τις επιθυμητές ρυθμίσεις μισθωτή. Για να δημιουργήσετε μια ομάδα ασφαλείας και να προσθέσετε μια κύρια υπηρεσία, ανατρέξτε στο θέμα Δημιουργία βασικής ομάδας και προσθήκη μελών με χρήση του Microsoft Entra ID.

Ενεργοποίηση κύριων υπηρεσιών

Για να μπορέσετε να αρχίσετε να χρησιμοποιείτε τις κύριες υπηρεσίες στο Power BI, ένας διαχειριστής πρέπει να ενεργοποιήσει την πρόσβαση κύριας υπηρεσίας στην πύλη διαχείρισης του Power BI.

  1. Μεταβείτε στην πύλη διαχείρισης του Power BI και, στη συνέχεια, επιλέξτε Ρυθμίσεις μισθωτή.
  2. Κάντε κύλιση στις Ρυθμίσεις προγραμματιστή και, στη συνέχεια, αναπτύξτε το στοιχείο Οι αρχές υπηρεσίας μπορούν να καλούν δημόσια API Fabric.
  3. Επιλέξτε Ενεργοποιημένο.
  4. Για να εφαρμόσετε δικαιώματα σε μια ομάδα ασφαλείας, επιλέξτε Συγκεκριμένες ομάδες ασφαλείας (Συνιστάται).
  5. Εισαγάγετε το όνομα της ομάδας.
  6. Επιλέξτε Εφαρμογή.

Πρόσβαση στον χώρο εργασίας

Προκειμένου η κύρια υπηρεσία σας να έχει τα απαραίτητα δικαιώματα για την εκτέλεση λειτουργιών χώρου εργασίας Premium και μοντέλου σημασιολογίας, πρέπει να προσθέσετε την κύρια υπηρεσία ως Μέλος ή Διαχειριστής χώρου εργασίας. Η χρήση της πρόσβασης χώρου εργασίας στην υπηρεσία Power BI περιγράφεται εδώ, αλλά μπορείτε επίσης να χρησιμοποιήσετε το API REST Προσθήκη χρήστη ομάδας.

  1. Στην υπηρεσία Power BI για έναν χώρο εργασίας, επιλέξτε Περισσότερη>πρόσβαση στον χώρο εργασίας.

    Στιγμιότυπο οθόνης που εμφανίζει μια λίστα χώρων εργασίας. Τα περισσότερα εικονίδια και η πρόσβαση στο χώρο εργασίας επισημαίνονται.

  2. Κάντε αναζήτηση κατά όνομα εφαρμογής και, στη συνέχεια, προσθέστε την κύρια υπηρεσία ως Διαχειριστής ή Μέλος στον χώρο εργασίας.

Συμβολοσειρές σύνδεσης για το τελικό σημείο XMLA

Αφού δημιουργήσετε μια κύρια υπηρεσία, ενεργοποιήσετε τις κύριες υπηρεσίες για τον μισθωτή σας και προσθέσετε την κύρια υπηρεσία στην πρόσβαση χώρου εργασίας, χρησιμοποιήστε την ως ταυτότητα χρήστη σε συμβολοσειρές σύνδεσης με το τελικό σημείο XMLA. Η διαφορά είναι ότι, αντί για τις user id παραμέτρους and password , καθορίζετε το αναγνωριστικό εφαρμογής, το αναγνωριστικό μισθωτή και τον μυστικό κωδικό εφαρμογής.

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<workspace name>; Initial Catalog=<dataset name>;User ID=app:<appId>@<tenantId>;Password=<app_secret>;

PowerShell

Ανοίξτε μια περίοδο λειτουργίας PowerShell για να εκτελέσετε το ακόλουθο παράδειγμα κώδικα.

Χρήση της λειτουργικής μονάδας SQLServer

Στο παρακάτω παράδειγμα, AppIdτα , TenantId, και AppSecret χρησιμοποιούνται για τον έλεγχο ταυτότητας μιας λειτουργίας ανανέωσης μοντέλου σημασιολογίας:

Param (
        [Parameter(Mandatory=$true)] [String] $AppId,
        [Parameter(Mandatory=$true)] [String] $TenantId,
        [Parameter(Mandatory=$true)] [String] $AppSecret
       )
$PWord = ConvertTo-SecureString -String $AppSecret -AsPlainText -Force

$Credential = New-Object -TypeName "System.Management.Automation.PSCredential" -ArgumentList $AppId, $PWord

Invoke-ProcessTable -Server "powerbi://api.powerbi.com/v1.0/myorg/myworkspace" -TableName "mytable" -DatabaseName "mydataset" -RefreshType "Full" -ServicePrincipal -ApplicationId $AppId -TenantId $TenantId -Credential $Credential

Αντικείμενα Διαχείρισης Ανάλυσης (AMO) και ADOMD.NET

Όταν συνδέεστε με εφαρμογές-πελάτες και εφαρμογές web, μπορείτε να χρησιμοποιήσετε τις βιβλιοθήκες προγράμματος-πελάτη AMO και ADOMD έκδοση 15.1.42.26 (Ιούνιος 2020) και νεότερα πακέτα με δυνατότητα εγκατάστασης από το NuGet για να υποστηρίξετε τις κύριες υπηρεσίες σε συμβολοσειρές σύνδεσης χρησιμοποιώντας την ακόλουθη σύνταξη: app:AppID και κωδικός πρόσβασης ή cert:thumbprint.

Στο παρακάτω παράδειγμα, appID και password οι τιμές χρησιμοποιούνται για την εκτέλεση μιας λειτουργίας ανανέωσης βάσης δεδομένων μοντέλου:

string appId = "xxx";
string authKey = "yyy";
string connString = $"Provider=MSOLAP;Data source=powerbi://api.powerbi.com/v1.0/<tenant>/<workspacename>;Initial catalog=<datasetname>;User ID=app:{appId};Password={authKey};";
Server server = new Server();
server.Connect(connString);
Database db = server.Databases.FindByName("adventureworks");
Table tbl = db.Model.Tables.Find("DimDate");
tbl.RequestRefresh(RefreshType.Full);
db.Model.SaveChanges();