Δημιουργία διακριτικού ενσωμάτωσης
ΙΣΕΙ ΓΙΑ: Τα δεδομένα ανήκουν στην εφαρμογή, τα δεδομένα ανήκουν στον χρήστη
Η Δημιουργία διακριτικού είναι ένα API REST που σας επιτρέπει να δημιουργήσετε ένα διακριτικό για την ενσωμάτωση μιας αναφοράς ή μοντέλου σημασιολογίας Του Power BI σε μια εφαρμογή Web ή μια πύλη. Μπορεί να δημιουργήσει ένα διακριτικό για ένα μόνο στοιχείο ή για πολλές αναφορές ή σημασιολογικά μοντέλα. Το διακριτικό χρησιμοποιείται για την εξουσιοδότηση της αίτησής σας έναντι των Υπηρεσία Power BI.
Το API δημιουργίας διακριτικού χρησιμοποιεί μία μόνο ταυτότητα (έναν κύριο χρήστη ή μια κύρια υπηρεσία) για τη δημιουργία ενός διακριτικού για έναν μεμονωμένο χρήστη, ανάλογα με τα διαπιστευτήρια αυτού του χρήστη στην εφαρμογή (ουσιαστική ταυτότητα).
Μετά τον επιτυχή έλεγχο ταυτότητας, εκχωρείται πρόσβαση στα σχετικά δεδομένα.
Σημείωμα
Η Δημιουργία διακριτικού είναι το νεότερο API έκδοσης 2 που λειτουργεί για αναφορές και σημασιολογικά μοντέλα και μεμονωμένα ή πολλαπλά στοιχεία. Προτιμάται από τα API έκδοσης 1 παλαιού τύπου. Για πίνακες εργαλείων και πλακίδια χρησιμοποιήστε τους πίνακες εργαλείων V1 GenerateTokenInGroup και πλακίδια GenerateTokenInGroup.
Ασφάλεια των δεδομένων σας
Εάν χειρίζεστε δεδομένα από πολλούς πελάτες, υπάρχουν δύο κύριες προσεγγίσεις για την ασφάλεια των δεδομένων σας: Απομόνωση βάσει χώρου εργασίας και Απομόνωση με βάση την ασφάλεια σε επίπεδο γραμμών. Μπορείτε να βρείτε μια λεπτομερή σύγκριση μεταξύ τους στα προφίλ κύριας υπηρεσίας και την ασφάλεια σε επίπεδο γραμμών.
Συνιστούμε τη χρήση απομόνωσης βάσει χώρου εργασίας με προφίλ, αλλά εάν θέλετε να χρησιμοποιήσετε την προσέγγιση RLS, εξετάστε την ενότητα RLS στο τέλος αυτού του άρθρου.
Δικαιώματα διακριτικού και ασφάλεια
Στα API δημιουργίας διακριτικού, η ενότητα GenerateTokenRequest περιγράφει τα δικαιώματα διακριτικού.
Επίπεδο πρόσβασης
Χρησιμοποιήστε την παράμετρο allowEdit για να εκχωρήσετε δικαιώματα προβολής ή επεξεργασίας στον χρήστη.
Προσθέστε το αναγνωριστικό χώρου εργασίας στο διακριτικό ενσωμάτωσης για να επιτρέψετε στο χρήστη να δημιουργεί νέες αναφορές (είτε SaveAs είτε CreateNew) σε αυτόν τον χώρο εργασίας.
Ασφάλεια σε επίπεδο γραμμών
Με την Ασφάλεια σε επίπεδο γραμμών (RLS), η ταυτότητα που χρησιμοποιείτε μπορεί να διαφέρει από την ταυτότητα της κύριας υπηρεσίας ή του κύριου χρήστη που χρησιμοποιείτε για τη δημιουργία του διακριτικού. Χρησιμοποιώντας διαφορετικές ταυτότητες, μπορείτε να εμφανίσετε ενσωματωμένες πληροφορίες σύμφωνα με τον χρήστη που στοχεύετε. Για παράδειγμα, στην εφαρμογή σας μπορείτε να ζητήσετε από τους χρήστες να εισέλθουν και, στη συνέχεια, να εμφανίσουν μια αναφορά που περιέχει μόνο πληροφορίες πωλήσεων εάν ο χρήστης που έχει εισέλθει είναι υπάλληλος πωλήσεων.
Εάν χρησιμοποιείτε RLS, μερικές φορές μπορείτε να παραλείψετε την ταυτότητα χρήστη (η παράμετρος EffectiveIdentity ). Όταν δεν χρησιμοποιείτε την παράμετρο EffectiveIdentity , το διακριτικό έχει πρόσβαση σε ολόκληρη τη βάση δεδομένων. Αυτή η μέθοδος μπορεί να χρησιμοποιηθεί για την εκχώρηση πρόσβασης σε χρήστες όπως διαχειριστές και διευθυντές, οι οποίοι έχουν δικαίωμα προβολής ολόκληρου του μοντέλου σημασιολογίας. Ωστόσο, δεν μπορείτε να χρησιμοποιήσετε αυτή τη μέθοδο σε κάθε σενάριο. Ο παρακάτω πίνακας παραθέτει τους διαφορετικούς τύπους RLS και δείχνει ποια μέθοδο ελέγχου ταυτότητας μπορεί να χρησιμοποιηθεί χωρίς να καθοριστεί η ταυτότητα ενός χρήστη.
Ο πίνακας εμφανίζει επίσης τα ζητήματα και τον περιορισμό που ισχύουν για κάθε τύπο RLS.
Τύπος RLS | Μπορώ να δημιουργήσω ένα διακριτικό ενσωμάτωσης χωρίς να καθορίσω το ουσιαστικό αναγνωριστικό χρήστη; | Ζητήματα προς εξέταση και περιορισμοί |
---|---|---|
Ασφάλεια σε επίπεδο γραμμών στο cloud (RLS στο cloud) | ✔ Κύριος χρήστης ✖ Κύρια υπηρεσία |
|
RDL (σελιδοποιημένες αναφορές) | ✖ Κύριος χρήστης ✔ Κύρια υπηρεσία |
Δεν μπορείτε να χρησιμοποιήσετε έναν κύριο χρήστη για να δημιουργήσετε ένα διακριτικό ενσωμάτωσης για το RDL. |
Δυναμική σύνδεση Υπηρεσιών ανάλυσης (AS) εσωτερικής εγκατάστασης | ✔ Κύριος χρήστης ✖ Κύρια υπηρεσία |
Ο χρήστης που δημιουργεί το διακριτικό ενσωμάτωσης χρειάζεται επίσης ένα από τα παρακάτω δικαιώματα: |
Δυναμική σύνδεση Υπηρεσιών ανάλυσης (AS) Azure | ✔ Κύριος χρήστης ✖ Κύρια υπηρεσία |
Δεν είναι δυνατή η παράκαμψη της ταυτότητας του χρήστη που δημιουργεί το διακριτικό ενσωμάτωσης. Τα προσαρμοσμένα δεδομένα μπορούν να χρησιμοποιηθούν για την υλοποίηση δυναμικού RLS ή ασφαλούς φιλτραρίσματος. Σημείωση: Η κύρια υπηρεσία πρέπει να παρέχει το αναγνωριστικό αντικειμένου της ως την πραγματική ταυτότητα (όνομα χρήστη RLS). |
καθολική σύνδεση (SSO) | ✔ Κύριος χρήστης ✖ Κύρια υπηρεσία |
Μια ρητή (SSO) ταυτότητα μπορεί να δοθεί χρησιμοποιώντας την ιδιότητα blob ταυτότητας σε ένα αποτελεσματικό αντικείμενο ταυτότητας |
SSO και cloud RLS | ✔ Κύριος χρήστης ✖ Κύρια υπηρεσία |
Πρέπει να καταχωρήσετε τα εξής: |
Σημείωμα
Οι οντότητες υπηρεσίας πρέπει πάντα να παρέχουν τις ακόλουθες πληροφορίες:
- Μια ταυτότητα για οποιοδήποτε στοιχείο με σημασιολογικό μοντέλο RLS.
- Για ένα σημασιολογικό μοντέλο SSO, μια αποτελεσματική ταυτότητα RLS με καθορισμένη την ταυτότητα περιβάλλοντος (SSO).
DirectQuery για σημασιολογικά μοντέλα Power BI
Για να ενσωματώσετε μια αναφορά Power BI που διαθέτει ένα σημασιολογικό μοντέλο με μια σύνδεση Direct Query σε ένα άλλο σημασιολογικό μοντέλο Power BI, κάντε τα εξής:
- Στην πύλη Power BI, ορίστε το τελικό σημείο XMLA σε Μόνο ανάγνωση ή Ανάγνωση εγγραφής, όπως περιγράφεται στην ενεργοποίηση ανάγνωσης-εγγραφής για Premium εκχωρημένους πόρους. Αυτό χρειάζεται να το κάνετε μόνο μία φορά ανά σύνολο εκχωρημένων πόρων.
- Δημιουργία διακριτικού ενσωμάτωσης πολλών πόρων
- Καθορίστε όλα τα αναγνωριστικά συνόλου δεδομένων στην αίτηση.
- Ορίστε την
XmlaPermissions
σε Μόνο ανάγνωση για κάθε μοντέλο σημασιολογίας στην αίτηση. - Για κάθε προέλευση δεδομένων με δυνατότητα καθολικής σύνδεσης (SSO), καταχωρήστε το αντικείμενο blob ταυτότητας για την προέλευση δεδομένων στην
DatasourceIdentity
.
Ανανέωση διακριτικών πριν από τη λήξη τους
Τα διακριτικά παρέχονται με χρονικό όριο. Αυτό σημαίνει ότι μετά την ενσωμάτωση ενός στοιχείου Power BI, έχετε περιορισμένο χρονικό διάστημα για να αλληλεπιδράσετε με αυτό. Για να παρέχετε στους χρήστες μια συνεχή εμπειρία, ανανεώστε (ή ανανεώστε) το διακριτικό προτού λήξει.
Πίνακες εργαλείων και πλακίδια
Η Δημιουργία διακριτικού λειτουργεί για αναφορές και σημασιολογικά μοντέλα. Για να δημιουργήσετε ένα διακριτικό ενσωμάτωσης για έναν πίνακα εργαλείων ή ένα πλακίδιο, χρησιμοποιήστε την έκδοση 1 Πίνακες εργαλείων GenerateTokenInGroup ή πλακίδια GenerateTokenInGroup API. Αυτά τα API δημιουργούν διακριτικά μόνο για ένα στοιχείο κάθε φορά. Δεν μπορείτε να δημιουργήσετε ένα διακριτικό για πολλαπλά στοιχεία.
Για αυτά τα API:
Χρησιμοποιήστε την παράμετρο accessLevel για να προσδιορίσετε το επίπεδο πρόσβασης του χρήστη.
Προβολή - Εκχωρήστε δικαιώματα προβολής στον χρήστη.
Επεξεργασία - Εκχωρήστε δικαιώματα προβολής και επεξεργασίας στον χρήστη (ισχύουν μόνο κατά τη δημιουργία ενός διακριτικού ενσωμάτωσης για μια αναφορά).
Δημιουργία - Εκχωρήστε δικαιώματα χρήστη για να δημιουργήσετε μια νέα αναφορά (ισχύει μόνο κατά τη δημιουργία ενός διακριτικού ενσωμάτωσης για τη δημιουργία μιας αναφοράς). Για τη δημιουργία αναφορών, πρέπει επίσης να παρέχετε την παράμετρο datasetId .
Χρησιμοποιήστε τη δυαδική τιμή allowSaveAs για να επιτρέψετε στους χρήστες να αποθηκεύουν την αναφορά ως νέα αναφορά. Αυτή η ρύθμιση ορίζεται σε false από προεπιλογή και ισχύει μόνο κατά τη δημιουργία ενός διακριτικού ενσωμάτωσης για μια αναφορά.
Ζητήματα προς εξέταση και περιορισμοί
Για λόγους ασφαλείας, η διάρκεια ζωής του διακριτικού ενσωμάτωσης ορίζεται στην υπόλοιπη διάρκεια ζωής του διακριτικού Του Microsoft Entra που χρησιμοποιείται για την κλήση του
GenerateToken
API. Επομένως, εάν χρησιμοποιείτε το ίδιο διακριτικό Microsoft Entra για τη δημιουργία πολλών διακριτικών ενσωμάτωσης, η διάρκεια ζωής των διακριτικών ενσωμάτωσης που δημιουργούνται θα είναι συντομότερη με κάθε κλήση.Εάν το μοντέλο σημασιολογίας και το στοιχείο που θα ενσωματωθεί βρίσκονται σε δύο διαφορετικούς χώρους εργασίας, η κύρια υπηρεσία ή ο κύριος χρήστης πρέπει να είναι τουλάχιστον μέλος και των δύο χώρων εργασίας.
Δεν μπορείτε να δημιουργήσετε ένα διακριτικό ενσωμάτωσης για την περιοχή Ο χώρος εργασίας μου.