Προφίλ κύριας υπηρεσίας για εφαρμογές πολλαπλών χρήσεων στο Power BI Embedded
Αυτό το άρθρο εξηγεί πώς ένας ISV ή οποιοσδήποτε άλλος κάτοχος εφαρμογής Power BI Embedded με πολλούς πελάτες μπορεί να χρησιμοποιήσει προφίλ κύριας υπηρεσίας για την αντιστοίχιση και τη διαχείριση των δεδομένων κάθε πελάτη ως μέρος της λύσης ενσωμάτωσης Power BI για τους πελάτες σας. Τα προφίλ κύριας υπηρεσίας επιτρέπουν στον ISV να δημιουργεί επεκτάσιμες εφαρμογές που επιτρέπουν καλύτερη απομόνωση δεδομένων πελατών και δημιουργούν αυστηρότερα όρια ασφαλείας μεταξύ των πελατών. Αυτό το άρθρο εξετάζει τα πλεονεκτήματα και τους περιορισμούς αυτής της λύσης.
Σημείωμα
Ο μισθωτής λέξεων στο Power BI μπορεί ορισμένες φορές να αναφέρεται σε έναν μισθωτή Microsoft Entra. Σε αυτό το άρθρο, ωστόσο, χρησιμοποιούμε τον όρο πολλαπλών χρήσεων για να περιγράψουμε μια λύση όπου μια μοναδική παρουσία μιας εφαρμογής λογισμικού εξυπηρετεί πολλούς πελάτες ή οργανισμούς (μισθωτές) που απαιτούν φυσικό και λογικό διαχωρισμό των δεδομένων. Για παράδειγμα, το Εργαλείο δόμησης εφαρμογών του Power BI μπορεί να εκχωρήσει έναν ξεχωριστό χώρο εργασίας για κάθε έναν από τους πελάτες (ή τους μισθωτές του), όπως φαίνεται παρακάτω. Αυτοί οι πελάτες δεν είναι απαραίτητα μισθωτές Microsoft Entra, επομένως μην συγχέετε τον όρο πολυτετακτική εφαρμογή που χρησιμοποιούμε εδώ, με την πολυτετακτική εφαρμογή Microsoft Entra.
Ένα προφίλ κύριας υπηρεσίας είναι ένα προφίλ που δημιουργήθηκε από μια κύρια υπηρεσία. Η εφαρμογή ISV καλεί τα Power BI API χρησιμοποιώντας ένα προφίλ κύριας υπηρεσίας, όπως εξηγείται σε αυτό το άρθρο.
Η κύρια υπηρεσία εφαρμογής ISV δημιουργεί ένα διαφορετικό προφίλ Power BI για κάθε πελάτη ή μισθωτή. Όταν ένας πελάτης επισκέπτεται την εφαρμογή ISV, η εφαρμογή χρησιμοποιεί το αντίστοιχο προφίλ για να δημιουργήσει ένα διακριτικό ενσωμάτωσης που θα χρησιμοποιηθεί για την απόδοση μιας αναφοράς στο πρόγραμμα περιήγησης.
Η χρήση των προφίλ κύριας υπηρεσίας επιτρέπει στην εφαρμογή ISV να φιλοξενεί πολλούς πελάτες σε έναν μεμονωμένο μισθωτή Power BI. Κάθε προφίλ αντιπροσωπεύει έναν πελάτη στο Power BI. Με άλλα λόγια, κάθε προφίλ δημιουργεί και διαχειρίζεται περιεχόμενο Power BI για τα δεδομένα ενός συγκεκριμένου πελάτη.
Σημείωμα
Αυτό το άρθρο απευθύνεται σε οργανισμούς που θέλουν να ρυθμίσουν μια πολυεπίπεδη εφαρμογή, χρησιμοποιώντας προφίλ κύριας υπηρεσίας. Εάν ο οργανισμός σας έχει ήδη μια εφαρμογή που υποστηρίζει πολλαπλή μίσθωση και θέλετε να κάνετε μετεγκατάσταση στο μοντέλο προφίλ κύριας υπηρεσίας, ανατρέξτε στο θέμα Μετεγκατάσταση στο μοντέλο προφίλ κύριας υπηρεσίας.
Η ρύθμιση του περιεχομένου σας Power BI περιλαμβάνει τα παρακάτω βήματα:
- Δημιουργία προφίλ
- Ορισμός δικαιωμάτων προφίλ
- Δημιουργία χώρου εργασίας για κάθε πελάτη
- Εισαγωγή αναφορών και σημασιολογικών μοντέλων στον χώρο εργασίας
- Ορισμός λεπτομερειών σύνδεσης μοντέλου σημασιολογίας για σύνδεση στα δεδομένα του πελάτη
- Κατάργηση δικαιωμάτων από την κύρια υπηρεσία (προαιρετικό, αλλά βοηθά με την κλιμάκωση)
- Ενσωμάτωση αναφοράς στην εφαρμογή
Όλα τα παραπάνω βήματα μπορούν να αυτοματοποιηθούν πλήρως χρησιμοποιώντας τα Power BI REST API.
Προαπαιτούμενα στοιχεία
Για να μπορέσετε να δημιουργήσετε προφίλ κύριας υπηρεσίας, χρειάζεται να κάνετε τα εξής:
- Ρυθμίστε την κύρια υπηρεσία ακολουθώντας τα πρώτα τρία βήματα του στοιχείου Ενσωμάτωση περιεχομένου Power BI με κύρια υπηρεσία.
- Από έναν λογαριασμό διαχειριστή μισθωτή Power BI, ενεργοποιήστε τη δημιουργία προφίλ στον μισθωτή χρησιμοποιώντας την ίδια ομάδα ασφαλείας που χρησιμοποιήσατε όταν δημιουργήσατε την κύρια υπηρεσία.
Δημιουργία προφίλ
Τα προφίλ μπορούν να δημιουργηθούν, να ενημερωθούν και να διαγραφούν με χρήση του REST API προφίλ.
Για παράδειγμα, για να δημιουργήσετε ένα προφίλ:
POST https://api.powerbi.com/v1.0/myorg/profiles HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJK…UUPA
Content-Type: application/json; charset=utf-8
{"displayName":"ContosoProfile"}
Μια κύρια υπηρεσία μπορεί επίσης να καλέσει το REST API get profiles για να λάβει μια λίστα με τα προφίλ της. Για παράδειγμα:
GET https://api.powerbi.com/v1.0/myorg/profiles HTTP/1.1
Authorization: Bearer eyJ0eXA…UUPA
Δικαιώματα προφίλ
Οποιοδήποτε API εκχωρεί σε έναν χρήστη δικαίωμα σε στοιχεία Power BI μπορεί επίσης να εκχωρήσει δικαιώματα προφίλ σε στοιχεία Power BI. Για παράδειγμα, η Προσθήκη API χρήστη ομάδας μπορεί να χρησιμοποιηθεί για την εκχώρηση δικαιωμάτων προφίλ σε έναν χώρο εργασίας.
Είναι σημαντικό να κατανοήσετε τα ακόλουθα σημεία κατά τη χρήση των προφίλ:
- Ένα προφίλ ανήκει στην κύρια υπηρεσία που το δημιούργησε και μπορεί να χρησιμοποιηθεί μόνο από αυτή την κύρια υπηρεσία.
- Δεν είναι δυνατή η αλλαγή ενός κατόχου προφίλ μετά τη δημιουργία του.
- Το προφίλ δεν είναι μεμονωμένη ταυτότητα. Χρειάζεται το διακριτικό microsoft Entra της κύριας υπηρεσίας για την κλήση των Power BI REST API.
Οι εφαρμογές ISV καλούν τα Power BI REST API παρέχοντας το διακριτικό microsoft Entra της κύριας υπηρεσίας στην κεφαλίδα εξουσιοδότησης και το αναγνωριστικό προφίλ στην κεφαλίδα X-PowerBI-Profile-Id . Για παράδειγμα:
GET https://api.powerbi.com/v1.0/myorg/groups HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUz.....SXBwasfg
X-PowerBI-Profile-Id: 5f1aa5ed-5983-46b5-bd05-999581d361a5
Δημιουργία χώρου εργασίας
Οι χώροι εργασίας Power BI χρησιμοποιούνται για τη φιλοξενία στοιχείων Power BI, όπως αναφορές και σημασιολογικά μοντέλα.
Κάθε προφίλ πρέπει να:
Δημιουργία τουλάχιστον ενός χώρου εργασίας Power BI
POST https://api.powerbi.com/v1.0/myorg/groups HTTP/1.1 Authorization: Bearer eyJ0eXA…ZUiIsg Content-Type: application/json; charset=utf-8 X-PowerBI-Profile-Id: a4df5235-6f18-4141-9e99-0c3512f41306 { "name": "ContosoWorkspace" }
Εκχώρηση δικαιωμάτων πρόσβασης στον χώρο εργασίας. Το προφίλ κύριας υπηρεσίας πρέπει να έχει πρόσβαση διαχειριστή στον χώρο εργασίας.
Εκχώρηση του χώρου εργασίας σε εκχωρημένους πόρους
POST https://api.powerbi.com/v1.0/myorg/groups/f313e682-c86b-422c-a3e2-b1a05426c4a3/AssignToCapacity HTTP/1.1 Authorization: Bearer eyJ0eXAiOiJK…wNkZUiIsg Content-Type: application/json; charset=utf-8 X-PowerBI-Profile-Id: a4df5235-6f18-4141-9e99-0c3512f41306 { "capacityId": "13f73071-d6d3-4d44-b9de-34590f3e3cf6" }
Διαβάστε περισσότερα σχετικά με τους χώρους εργασίας Power BI.
Εισαγωγή αναφορών και σημασιολογικών μοντέλων
Χρησιμοποιήστε το Power BI Desktop για να προετοιμάσετε αναφορές που συνδέονται στα δεδομένα του πελάτη ή στο δείγμα δεδομένων. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε το API εισαγωγής για να εισαγάγετε το περιεχόμενο στον χώρο εργασίας που δημιουργήθηκε.
POST https://api.powerbi.com/v1.0/myorg/groups/f313e682-c86b-422c-a3e2-b1a05426c4a3/imports?datasetDisplayName=ContosoSales HTTP/1.1
Authorization: Bearer eyJ...kZUiIsg
Content-Type: multipart/form-data; boundary="8b071895-b380-4769-9c62-7e586d717ed7"
X-PowerBI-Profile-Id: a4df5235-6f18-4141-9e99-0c3512f41306
Fiddler-Encoding: base64
LS04YjA3MTg5NS1iMzgwLTQ3...Tg2ZDcxN2VkNy0tDQo=
Χρησιμοποιήστε παραμέτρους συνόλου δεδομένων για να δημιουργήσετε ένα σημασιολογικό μοντέλο που μπορεί να συνδεθεί με διαφορετικές προελεύσεις δεδομένων πελατών. Στη συνέχεια, χρησιμοποιήστε το API Ενημερώστε τις παραμέτρους για να ορίσετε σε ποια δεδομένα πελατών συνδέεται το σημασιολογικό μοντέλο.
Ορισμός της σύνδεσης μοντέλου σημασιολογίας
Οι ISV συνήθως αποθηκεύουν τα δεδομένα των πελατών τους με έναν από τους εξής δύο τρόπους:
Σε κάθε περίπτωση, θα πρέπει να καταλήξετε με σημασιολογικά μοντέλα ενός μισθωτή (ένα σημασιολογικό μοντέλο ανά πελάτη) στο Power BI.
Μια ξεχωριστή βάση δεδομένων για κάθε πελάτη
Εάν η εφαρμογή ISV έχει μια ξεχωριστή βάση δεδομένων για κάθε πελάτη, δημιουργήστε σημασιολογικά μοντέλα ενός μισθωτή στο Power BI. Καταχωρήστε σε κάθε σημασιολογικό μοντέλο λεπτομέρειες σύνδεσης που δείχνουν στην αντίστοιχη βάση δεδομένων του. Χρησιμοποιήστε μία από τις ακόλουθες μεθόδους για να αποφύγετε τη δημιουργία πολλών πανομοιότυπων αναφορών με διαφορετικές λεπτομέρειες σύνδεσης:
Παράμετροι μοντέλου σημασιολογίας: Δημιουργήστε ένα μοντέλο σημασιολογίας με παραμέτρους στις λεπτομέρειες σύνδεσης (όπως όνομα διακομιστή SQL, όνομα βάσης δεδομένων SQL). Στη συνέχεια, εισαγάγετε μια αναφορά στον χώρο εργασίας ενός πελάτη και αλλάξτε τις παραμέτρους ώστε να συμφωνούν με τις λεπτομέρειες της βάσης δεδομένων του πελάτη.
Ενημέρωση API προέλευσης δεδομένων: Δημιουργήστε ένα .pbix που δείχνει σε μια προέλευση δεδομένων με δείγμα περιεχομένου. Στη συνέχεια, εισαγάγετε το .pbix στον χώρο εργασίας ενός πελάτη και αλλάξτε τις λεπτομέρειες σύνδεσης χρησιμοποιώντας το API Ενημέρωση προέλευσης δεδομένων.
Μία μεμονωμένη πολυεπίπεδη βάση δεδομένων
Εάν η εφαρμογή ISV χρησιμοποιεί μία βάση δεδομένων για όλους τους πελάτες της, διαχωρίστε τους πελάτες σε διαφορετικά σημασιολογικά μοντέλα στο Power BI ως εξής:
Δημιουργήστε μια αναφορά χρησιμοποιώντας παραμέτρους που ανακτούν μόνο τα σχετικά δεδομένα του πελάτη. Στη συνέχεια, εισαγάγετε μια αναφορά στον χώρο εργασίας ενός πελάτη και αλλάξτε τις παραμέτρους για να ανακτήσετε μόνο τα σχετικά δεδομένα του πελάτη.
Ενσωμάτωση αναφοράς
Μετά την ολοκλήρωση της ρύθμισης, μπορείτε να ενσωματώσετε αναφορές πελατών και άλλα στοιχεία στην εφαρμογή σας χρησιμοποιώντας ένα διακριτικό ενσωμάτωσης.
Όταν ένας πελάτης επισκέπτεται την εφαρμογή σας, χρησιμοποιήστε το αντίστοιχο προφίλ για να καλέσετε το API GenerateToken. Χρησιμοποιήστε το διακριτικό ενσωμάτωσης που δημιουργήθηκε για να ενσωματώσετε μια αναφορά ή άλλα στοιχεία στο πρόγραμμα περιήγησης του πελάτη.
Για να δημιουργήσετε ένα διακριτικό ενσωμάτωσης:
POST https://api.powerbi.com/v1.0/myorg/GenerateToken HTTP/1.1
Authorization: Bearer eyJ0eXAiOi…kZUiIsg
Content-Type: application/json; charset=utf-8
X-PowerBI-Profile-Id: a4df5235-6f18-4141-9e99-0c3512f41306
{
"datasets": [
{
"id": "3b1c8f74-fbbe-45e0-bf9d-19fce69262e3"
}
],
"reports": [
{
"id": "3d474b89-f2d5-43a2-a436-d24a6eb2dc8f"
}
]
}
Πτυχές σχεδίασης
Πριν από τη ρύθμιση μιας λύσης πολλαπλών διαστάσεων βάσει προφίλ, θα πρέπει να γνωρίζετε τα ακόλουθα προβλήματα:
- Δυνατότητα κλιμάκωσης
- Αυτοματοποίηση και λειτουργική πολυπλοκότητα
- Ανάγκες Multi-Geo
- Αποδοτικότητα κόστους
- Ασφάλεια σε επίπεδο γραμμών
Δυνατότητα κλιμάκωσης
Διαχωρίζοντας τα δεδομένα σε ξεχωριστά σημασιολογικά μοντέλα για κάθε πελάτη, ελαχιστοποιείτε την ανάγκη για μεγάλα σημασιολογικά μοντέλα. Όταν το σύνολο εκχωρημένων πόρων υπερφορτώνεται, μπορεί να καταργήσει τα σημασιολογικά μοντέλα που δεν χρησιμοποιείται για να ελευθερώσει μνήμη για ενεργά σημασιολογικά μοντέλα. Αυτή η βελτιστοποίηση είναι αδύνατη για ένα μεμονωμένο μεγάλο σημασιολογικό μοντέλο. Χρησιμοποιώντας πολλά σημασιολογικά μοντέλα, μπορείτε επίσης να διαχωρίσετε τους μισθωτές σε πολλά σύνολα εκχωρημένων πόρων Power BI, εάν είναι απαραίτητο.
Χωρίς προφίλ, μια κύρια υπηρεσία περιορίζεται σε 1.000 χώρους εργασίας. Για να ξεπεράσει αυτό το όριο, μια κύρια υπηρεσία μπορεί να δημιουργήσει πολλαπλά προφίλ, όπου κάθε προφίλ μπορεί να έχει πρόσβαση/δημιουργήσει έως και 1.000 χώρους εργασίας. Με πολλά προφίλ, η εφαρμογή ISV μπορεί να απομονώσει το περιεχόμενο κάθε πελάτη, χρησιμοποιώντας ξεχωριστά λογικά κοντέινερ.
Όταν ένα προφίλ κύριας υπηρεσίας έχει πρόσβαση σε έναν χώρο εργασίας, η πρόσβαση της γονικής κύριας υπηρεσίας του στον χώρο εργασίας μπορεί να καταργηθεί για να αποφευχθούν προβλήματα δυνατότητας κλιμάκωσης.
Ακόμη και με αυτά τα πλεονεκτήματα, θα πρέπει να λάβετε υπόψη την πιθανή κλίμακα της εφαρμογής σας. Για παράδειγμα, ο αριθμός των στοιχείων χώρου εργασίας στα οποία μπορεί να έχει πρόσβαση ένα προφίλ είναι περιορισμένος. Σήμερα, ένα προφίλ έχει τα ίδια όρια με έναν κανονικό χρήστη. Εάν η εφαρμογή ISV επιτρέπει στους τελικούς χρήστες να αποθηκεύουν ένα εξατομικευμένο αντίγραφο των ενσωματωμένων αναφορών τους, το προφίλ ενός πελάτη θα έχει πρόσβαση σε όλες τις αναφορές που δημιουργήθηκαν από όλους τους χρήστες του. Αυτό το μοντέλο μπορεί τελικά να υπερβεί το όριο.
Αυτοματοποίηση και λειτουργική πολυπλοκότητα
Με τον διαχωρισμό βάσει προφίλ Power BI, ίσως χρειαστεί να διαχειριστείτε εκατοντάδες ή χιλιάδες στοιχεία. Επομένως, είναι σημαντικό να ορίσετε τις διαδικασίες που συμβαίνουν συχνά στη διαχείριση του κύκλου ζωής των εφαρμογών σας και να βεβαιωθείτε ότι έχετε το σωστό σύνολο εργαλείων για να κάνετε αυτές τις λειτουργίες σε κλίμακα. Ορισμένες από αυτές τις λειτουργίες περιλαμβάνουν:
- Προσθήκη νέου μισθωτή
- Ενημέρωση αναφοράς για ορισμένους ή για όλους τους μισθωτές
- Ενημέρωση του σχήματος σημασιολογικού μοντέλου για ορισμένους ή για όλους τους μισθωτές
- Μη προγραμματισμένες προσαρμογές για συγκεκριμένους μισθωτές
- Συχνότητα ανανεώσεων σημασιολογικού μοντέλου
Για παράδειγμα, η δημιουργία ενός προφίλ και ενός χώρου εργασίας για έναν νέο μισθωτή είναι μια κοινή εργασία, η οποία μπορεί να αυτοματιστεί πλήρως με το Power BI REST API.
Ανάγκες Multi-Geo
Η υποστήριξη Multi-Geo για Power BI Embedded σημαίνει ότι οι ISV και οι οργανισμοί που δημιουργούν εφαρμογές που χρησιμοποιούν το Power BI Embedded για την ενσωμάτωση ανάλυσης στις εφαρμογές τους μπορούν πλέον να αναπτύσσουν τα δεδομένα τους σε διαφορετικές περιοχές σε όλο τον κόσμο. Για την υποστήριξη διαφορετικών πελατών σε διαφορετικές περιοχές, εκχωρήστε τον χώρο εργασίας του πελάτη σε ένα σύνολο εκχωρημένων πόρων στην επιθυμητή περιοχή. Αυτή η εργασία είναι μια απλή λειτουργία που δεν περιλαμβάνει επιπλέον κόστος. Ωστόσο, εάν έχετε πελάτες που χρειάζονται δεδομένα από πολλές περιοχές, το προφίλ μισθωτή θα πρέπει να αναπαράγει όλα τα στοιχεία σε πολλούς χώρους εργασίας που έχουν αντιστοιχιστεί σε διαφορετικούς τοπικούς εκχωρημένους πόρους. Αυτή η αντιγραφή μπορεί να αυξήσει τόσο το κόστος όσο και την πολυπλοκότητα της διαχείρισης.
Για λόγους συμμόρφωσης, μπορεί να θέλετε να δημιουργήσετε πολλούς μισθωτές Power BI σε διαφορετικές περιοχές. Διαβάστε περισσότερα σχετικά με το Multi-Geo.
Αποδοτικότητα κόστους
Οι προγραμματιστές εφαρμογών που χρησιμοποιούν το Power BI Embedded πρέπει να αγοράσουν εκχωρημένους πόρους του Power BI Embedded. Το μοντέλο διαχωρισμού βάσει προφίλ λειτουργεί καλά με εκχωρημένους πόρους καθώς:
Το μικρότερο αντικείμενο που μπορείτε να αντιστοιχίσετε ανεξάρτητα σε ένα σύνολο εκχωρημένων πόρων είναι ένας χώρος εργασίας (για παράδειγμα, δεν μπορείτε να αντιστοιχίσετε μια αναφορά). Διαχωρίζοντας τους πελάτες κατά προφίλ, λαμβάνετε διαφορετικούς χώρους εργασίας - έναν ανά πελάτη. Με αυτόν τον τρόπο, έχετε πλήρη ευελιξία να διαχειρίζεστε κάθε πελάτη σύμφωνα με τις ανάγκες απόδοσής του και να βελτιστοποιείτε τη χρήση εκχωρημένων πόρων με κλιμάκωση προς τα επάνω ή προς τα κάτω. Για παράδειγμα, μπορείτε να διαχειριστείτε μεγάλους και απαραίτητους πελάτες με μεγάλο όγκο και μεταβλητότητα σε ξεχωριστό σύνολο εκχωρημένων πόρων για να εξασφαλίσετε ένα συνεπές επίπεδο εξυπηρέτησης, ενώ παράλληλα ομαδοποιείτε μικρότερους πελάτες σε ένα άλλο σύνολο εκχωρημένων πόρων για να βελτιστοποιήσετε το κόστος.
Ο διαχωρισμός των χώρων εργασίας σημαίνει επίσης το διαχωρισμό σημασιολογικών μοντέλων μεταξύ μισθωτών, έτσι ώστε τα μοντέλα δεδομένων να είναι σε μικρότερα τμήματα, αντί για ένα μεγάλο σημασιολογικό μοντέλο. Αυτά τα μικρότερα μοντέλα επιτρέπουν στους εκχωρημένους πόρους να διαχειρίζονται πιο αποτελεσματικά τη χρήση μνήμης. Τα μικρά, αχρησιμοποίητα σημασιολογικά μοντέλα μπορούν να εκκαθαριστούν μετά από μια περίοδο αδράνειας, προκειμένου να διατηρηθεί η καλή απόδοση.
Κατά την αγορά ενός συνόλου εκχωρημένων πόρων, εξετάστε το όριο του αριθμού των παράλληλων ανανεώσεων, καθώς οι διαδικασίες ανανέωσης μπορεί να χρειαστούν επιπλέον εκχωρημένους πόρους όταν έχετε πολλά σημασιολογικά μοντέλα.
Ασφάλεια σε επίπεδο γραμμών
Αυτό το άρθρο εξηγεί πώς μπορείτε να χρησιμοποιήσετε προφίλ για να δημιουργήσετε ένα ξεχωριστό μοντέλο σημασιολογίας για κάθε πελάτη. Εναλλακτικά, οι εφαρμογές ISV μπορούν να αποθηκεύουν όλα τα δεδομένα των πελατών τους σε ένα μεγάλο σημασιολογικό μοντέλο και να χρησιμοποιούν ασφάλεια σε επίπεδο γραμμών (RLS) για την προστασία των δεδομένων κάθε πελάτη. Αυτή η προσέγγιση μπορεί να είναι βολική για ISV που έχουν σχετικά λίγους πελάτες και μικρά έως μεσαίου μεγέθους σημασιολογικά μοντέλα καθώς:
- Υπάρχει μόνο μία αναφορά και ένα σημασιολογικό μοντέλο που πρέπει να διατηρηθεί
- Η διαδικασία προσθήκης λογαριασμών για νέους πελάτες μπορεί να απλοποιηθεί
Ωστόσο, προτού χρησιμοποιήσετε το RLS, βεβαιωθείτε ότι έχετε κατανοήσει τους περιορισμούς του. Όλα τα δεδομένα για όλους τους πελάτες βρίσκονται σε ένα μεγάλο σημασιολογικό μοντέλο Power BI. Αυτό το σημασιολογικό μοντέλο εκτελείται σε ένα σύνολο εκχωρημένων πόρων με τη δική του κλίμακα και άλλους περιορισμούς.
Ακόμα και αν χρησιμοποιείτε προφίλ κύριας υπηρεσίας για να διαχωρίσετε τα δεδομένα των πελατών σας, εξακολουθείτε να μπορείτε να χρησιμοποιήσετε την RLS μέσα σε ένα μοντέλο σημασιολογίας ενός πελάτη για να δώσετε πρόσβαση σε διαφορετικές ομάδες σε διαφορετικά τμήματα των δεδομένων. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε το RLS για να αποτρέψετε τα μέλη ενός τμήματος να έχουν πρόσβαση σε δεδομένα ενός άλλου τμήματος στον ίδιο οργανισμό.
Ζητήματα προς εξέταση και περιορισμοί
- Τα προφίλ κύριας υπηρεσίας υποστηρίζονται μόνο μέσω του Power BI REST API, του Power BI .NET SDK και μέσω του τελικού σημείου XMLA και του μοντέλου αντικειμένου σε μορφή πίνακα (TOM) όταν χρησιμοποιείτε βιβλιοθήκες προγράμματος-πελάτη των Υπηρεσιών ανάλυσης έκδοση 16.0.139.27 ή νεότερη. Τα προφίλ κύριας υπηρεσίας δεν υποστηρίζονται στο Power BI μέσω του τελικού σημείου XMLA ή του μοντέλου αντικειμένου σε μορφή πίνακα (TOM) με παλαιότερες βιβλιοθήκες προγράμματος-πελάτη.
- Τα προφίλ κύριας υπηρεσίας δεν υποστηρίζονται με τις Υπηρεσίες Ανάλυσης του Azure (AAS) σε λειτουργία δυναμικής σύνδεσης.
- Το μέγιστο προφίλ που μπορεί να έχει μια μοναδική κύρια υπηρεσία είναι 100.000.
Περιορισμοί εκχωρημένων πόρων του Power BI
- Κάθε σύνολο εκχωρημένων πόρων μπορεί να χρησιμοποιεί μόνο την εκχωρημένη μνήμη και τους εικονικούς πυρήνες του, σύμφωνα με την SKU που αγοράστηκε. Για το προτεινόμενο μέγεθος σημασιολογικού μοντέλου για κάθε SKU, ανατρέξτε στο θέμα Μεγάλα σημασιολογικά μοντέλα Premium.
- Για να χρησιμοποιήσετε ένα σημασιολογικό μοντέλο μεγαλύτερο από 10 GB, χρησιμοποιήστε ένα σύνολο Premium εκχωρημένων πόρων και ενεργοποιήστε τη ρύθμιση Μεγάλα σημασιολογικά μοντέλα .
- Για τον αριθμό των ανανεώσεων που μπορούν να εκτελούνται ταυτόχρονα σε ένα σύνολο εκχωρημένων πόρων, ανατρέξτε στη διαχείριση και βελτιστοποίηση των πόρων.
Διαχείριση οντοτήτων υπηρεσίας
Αλλαγή κύριας υπηρεσίας
Στο Power BI, ένα προφίλ ανήκει στην κύρια υπηρεσία που το δημιούργησε. Αυτό σημαίνει ότι δεν είναι δυνατή η κοινή χρήση ενός προφίλ με άλλες οντότητες. Με αυτόν τον περιορισμό, εάν θέλετε να αλλάξετε την κύρια υπηρεσία για οποιονδήποτε λόγο, θα χρειαστεί να δημιουργήσετε εκ νέου όλα τα προφίλ και να παράσχετε στα νέα προφίλ πρόσβαση στους σχετικούς χώρους εργασίας. Συχνά, η εφαρμογή ISV πρέπει να αποθηκεύσει μια αντιστοίχιση μεταξύ ενός αναγνωριστικού προφίλ και ενός αναγνωριστικού πελάτη, προκειμένου να επιλέξει το σωστό προφίλ όταν χρειάζεται. Εάν αλλάξετε την κύρια υπηρεσία και δημιουργήσετε εκ νέου τα προφίλ, τα αναγνωριστικά θα αλλάξουν επίσης και ίσως χρειαστεί να ενημερώσετε την αντιστοίχιση στη βάση δεδομένων της εφαρμογής ISV.
Διαγραφή κύριας υπηρεσίας
Προειδοποίηση
Να είστε πολύ προσεκτικοί κατά τη διαγραφή μιας κύριας υπηρεσίας. Δεν θέλετε να χάσετε κατά λάθος δεδομένα από όλα τα συσχετισμένα προφίλ του.
Εάν διαγράψετε την κύρια υπηρεσία στην υπηρεσία καταλόγου Active Directory, όλα τα προφίλ της στο Power BI θα διαγραφούν. Ωστόσο, το Power BI δεν διαγράφει αμέσως το περιεχόμενο, επομένως ο διαχειριστής μισθωτή εξακολουθεί να έχει πρόσβαση στους χώρους εργασίας. Να προσέχετε όταν διαγράφετε μια κύρια υπηρεσία που χρησιμοποιείται σε ένα σύστημα παραγωγής, ιδιαίτερα όταν δημιουργείτε προφίλ χρησιμοποιώντας αυτήν την κύρια υπηρεσία στο Power BI. Εάν διαγράψετε μια κύρια υπηρεσία που έχει δημιουργήσει προφίλ, θα πρέπει να γνωρίζετε ότι θα χρειαστεί να δημιουργήσετε εκ νέου όλα τα προφίλ, να παρέχετε στα νέα προφίλ πρόσβαση στους σχετικούς χώρους εργασίας και να ενημερώσετε τα αναγνωριστικά προφίλ στη βάση δεδομένων της εφαρμογής ISV.
Διαχωρισμός δεδομένων
Όταν τα δεδομένα διαχωρίζονται με προφίλ κύριας υπηρεσίας, μια απλή αντιστοίχιση μεταξύ ενός προφίλ και ενός πελάτη εμποδίζει έναν πελάτη να δει το περιεχόμενο ενός άλλου πελάτη. Η χρήση μίας κύριας υπηρεσίας απαιτεί η κύρια υπηρεσία να έχει πρόσβαση σε όλους τους διαφορετικούς χώρους εργασίας σε όλα τα προφίλ.
Για να προσθέσετε επιπλέον διαχωρισμό, εκχωρήστε μια ξεχωριστή κύρια υπηρεσία σε κάθε μισθωτή, αντί να έχετε μία κύρια υπηρεσία πρόσβαση σε πολλούς χώρους εργασίας χρησιμοποιώντας διαφορετικά προφίλ. Η εκχώρηση ξεχωριστών οντοτήτων υπηρεσίας έχει πολλά πλεονεκτήματα, όπως:
- Το ανθρώπινο σφάλμα ή η διαρροή διαπιστευτηρίων δεν θα προκαλέσει έκθεση των δεδομένων πολλών μισθωτών.
- Η περιστροφή πιστοποιητικών μπορεί να γίνει ξεχωριστά για κάθε μισθωτή.
Ωστόσο, η χρήση πολλών οντοτήτων υπηρεσίας συνοδεύεται από υψηλό κόστος διαχείρισης. Επιλέξτε αυτήν τη διαδρομή μόνο εάν χρειάζεστε τον επιπλέον διαχωρισμό. Να θυμάστε ότι η ρύθμιση παραμέτρων των δεδομένων που θα εμφανίζονται σε έναν τελικό χρήστη ορίζεται όταν δημιουργείτε το διακριτικό ενσωμάτωσης, μια διαδικασία που εκτελείται μόνο στο παρασκήνιο, την οποία οι τελικοί χρήστες δεν μπορούν να δουν ή να αλλάξουν. Η αίτηση ενός διακριτικού ενσωμάτωσης με χρήση ενός προφίλ μισθωτή θα δημιουργήσει ένα διακριτικό ενσωμάτωσης για αυτό το συγκεκριμένο προφίλ, το οποίο θα σας δώσει ένα διαχωρισμό πελατών στην κατανάλωση.
Μία αναφορά, πολλά σημασιολογικά μοντέλα
Γενικά, έχετε μία αναφορά και ένα σημασιολογικό μοντέλο ανά μισθωτή. Εάν έχετε εκατοντάδες αναφορές, θα έχετε εκατοντάδες σημασιολογικά μοντέλα. Ορισμένες φορές, μπορεί να έχετε μία μορφή αναφοράς, με διαφορετικά σημασιολογικά μοντέλα (για παράδειγμα, διαφορετικές παραμέτρους ή λεπτομέρειες σύνδεσης). Κάθε φορά που έχετε μια νέα έκδοση της αναφοράς, θα πρέπει να ενημερώνετε όλες τις αναφορές για όλους τους μισθωτές. Παρόλο που μπορείτε να αυτοματοποιήσετε αυτήν τη δυνατότητα, η διαχείριση είναι ευκολότερη εάν έχετε μόνο ένα αντίγραφο της αναφοράς. Δημιουργήστε έναν χώρο εργασίας που περιέχει την αναφορά για ενσωμάτωση. Κατά τη διάρκεια ενός χρόνου εκτέλεσης περιόδου λειτουργίας, συνδέστε την αναφορά με το σημασιολογικό μοντέλο συγκεκριμένου μισθωτή. Διαβάστε το θέμα δυναμικές συνδέσεις για περισσότερες λεπτομέρειες.
Προσαρμογή και σύνταξη περιεχομένου
Όταν δημιουργείτε περιεχόμενο, εξετάστε προσεκτικά ποιος έχει δικαίωμα επεξεργασίας του. Εάν επιτρέπετε την επεξεργασία πολλών χρηστών σε κάθε μισθωτή, είναι εύκολο να υπερβείτε τους περιορισμούς σημασιολογικών μοντέλων. Εάν αποφασίσετε να δώσετε στους χρήστες τη δυνατότητα επεξεργασίας, παρακολουθήστε στενά τη δημιουργία περιεχομένου τους και αυξήστε τις ανάγκες σας. Για τον ίδιο λόγο, δεν συνιστάται η χρήση αυτής της δυνατότητας για την εξατομίκευση περιεχομένου, όπου κάθε χρήστης μπορεί να κάνει μικρές αλλαγές σε μια αναφορά και να την αποθηκεύει για λογαριασμό του. Εάν η εφαρμογή ISV επιτρέπει την εξατομίκευση περιεχομένου, εξετάστε το ενδεχόμενο να παρουσιάσετε πολιτικές διατήρησης χώρου εργασίας για περιεχόμενο συγκεκριμένου χρήστη. Οι πολιτικές διατήρησης διευκολύνουν τη διαγραφή περιεχομένου όταν οι χρήστες μετακινούνται σε μια νέα θέση, εγκαταλείπουν την εταιρεία ή σταματούν να χρησιμοποιούν την πλατφόρμα.
Ταυτότητα διαχειριζόμενη από το σύστημα
Αντί για μια κύρια υπηρεσία, μπορείτε να χρησιμοποιήσετε μια διαχειριζόμενη ταυτότητα που έχει αντιστοιχιστεί από τον χρήστη ή έχει αντιστοιχιστεί στοσύστημα για να δημιουργήσετε προφίλ. Οι διαχειριζόμενες ταυτότητες μειώνουν την ανάγκη για μυστικούς λόγους και πιστοποιητικά.
Να προσέχετε όταν χρησιμοποιείτε μια ταυτότητα διαχειριζόμενη από το σύστημα καθώς:
- Εάν μια διαχειριζόμενη ταυτότητα που έχει αντιστοιχιστεί στο σύστημα απενεργοποιηθεί κατά λάθος, θα χάσετε την πρόσβαση στα προφίλ. Αυτή η κατάσταση είναι παρόμοια με μια περίπτωση όπου μια κύρια υπηρεσία διαγράφεται.
- Μια διαχειριζόμενη ταυτότητα που έχει αντιστοιχιστεί στο σύστημα συνδέεται σε έναν πόρο στο Azure (εφαρμογή Web). Εάν διαγράψετε τον πόρο, η ταυτότητα θα διαγραφεί.
- Η χρήση πολλών πόρων (διαφορετικές εφαρμογές Web σε διαφορετικές περιοχές) θα έχει ως αποτέλεσμα πολλές ταυτότητες που πρέπει να γίνουν ξεχωριστά (κάθε ταυτότητα θα έχει το δικό της προφίλ).
Εξαιτίας των παραπάνω ζητημάτων, συνιστούμε να χρησιμοποιήσετε μια διαχειριζόμενη ταυτότητα που έχει εκχωρηθεί από τον χρήστη.
Παράδειγμα
Για ένα παράδειγμα του τρόπου χρήσης των προφίλ κύριας υπηρεσίας για τη διαχείριση ενός πολυετούς περιβάλλοντος με την ενσωμάτωση Power BI και App-Owns-Data, κάντε λήψη του αποθετηρίου δεδομένων που είναι κάτοχοι δεδομένων από το Power BI Dev Camp (τοποθεσία τρίτου μέρους).