Εφαρμογή ασφάλειας σε επίπεδο γραμμών σε ενσωματωμένες σελιδοποιημένες αναφορές
ΙΣΕΙ ΓΙΑ: Τα δεδομένα ανήκουν στην εφαρμογή, τα δεδομένα ανήκουν στον χρήστη
Αυτό το άρθρο εξηγεί τον τρόπο ενσωμάτωσης μιας σελιδοποιημένης αναφοράς που χρησιμοποιεί ασφάλεια σε επίπεδο γραμμών (ασφάλεια σε επίπεδο γραμμών) στην εφαρμογή δεδομένων της εφαρμογής σας.
Σημείωμα
Αυτό το άρθρο αφορά μόνο πελάτες δεδομένων που ανήκουν στην εφαρμογή.
Για να χρησιμοποιήσετε το RLS για τις σελιδοποιημένες αναφορές σας:
- Ρύθμιση του περιβάλλοντος για φιλτράρισμα της αναφοράς
- Φιλτράρισμα των δεδομένων σε επίπεδο αναφοράς ή ερωτήματος
- Διαβίβαση της παραμέτρου που έχει ρυθμιστεί με χρήση διακριτικού ενσωμάτωσης
Προαπαιτούμενα στοιχεία
Αυτό το άρθρο προϋποθέτει ότι γνωρίζετε πώς μπορείτε να ενσωματώσετε μια σελιδοποιημένη αναφορά Power BI. Εξηγεί πώς μπορείτε να δημιουργήσετε το διακριτικό ενσωμάτωσης, έτσι ώστε η αναφορά να εμφανίζει μόνο τι έχει δικαίωμα πρόσβασης ο χρήστης.
Οι σελιδοποιημένες αναφορές δημιουργούνται με τη μηχανή Υπηρεσίες αναφοράς του SQL Server και όχι με τον μηχανισμό Power BI (Υπηρεσίες ανάλυσης), επομένως, το φιλτράρισμα RLS έχει ρυθμιστεί στο Power BI Εργαλείο δόμησης αναφορών.
Ρύθμιση του περιβάλλοντος
Για να εφαρμόσετε ασφάλεια σε επίπεδο γραμμών σε μια σελιδοποιημένη αναφορά Power BI, χρησιμοποιήστε το ενσωματωμένο πεδίο UserID για να αντιστοιχίσετε μια παράμετρο. Αυτή η παράμετρος θα χρησιμοποιηθεί για το φιλτράρισμα ή την υποβολή ερωτημάτων στα δεδομένα σας.
Στη συνέχεια, διαβιβάστε το Αναγνωριστικό χρήστη στο Διακριτικό ενσωμάτωσης - Δημιουργία διακριτικού API για να λάβετε το διακριτικό ενσωμάτωσης.
Χρήση του UserID ως φίλτρου σε επίπεδο αναφοράς ή ερωτήματος
Μπορείτε να χρησιμοποιήσετε το UserId ως φίλτρο ή σε ένα ερώτημα προς την προέλευση δεδομένων.
Φιλτράρισμα των δεδομένων
Στο παράθυρο Ιδιότητες μοντέλου σημασιολογίας, από το αριστερό τμήμα παραθύρου, επιλέξτε Φίλτρο.
Από το αναπτυσσόμενο μενού Παράσταση , επιλέξτε την παράμετρο που θέλετε να χρησιμοποιήσετε για το φιλτράρισμα των δεδομένων.
Κάντε κλικ στο κουμπί Συνάρτηση Value .
Στο παράθυρο Παράσταση, από τη λίστα Κατηγορία, επιλέξτε Ενσωματωμένα πεδία.
Από τη λίστα Στοιχείο , επιλέξτε UserID και κάντε κλικ στο ΚΟΥΜΠΊ OK.
Στο παράθυρο Ιδιότητες μοντέλου σημασιολογίας, επαληθεύστε ότι η παράσταση είναι η επιλεγμένη σας παράμετρος = UserID και κάντε κλικ στο κουμπί OK.
Χρήση ερωτήματος
Στο παράθυρο Ιδιότητες μοντέλου σημασιολογίας, από το αριστερό παράθυρο περιήγησης, επιλέξτε Παράμετροι και κάντε κλικ στην Προσθήκη.
Στο πεδίο Όνομα παραμέτρου πληκτρολογήστε @UserID και στην Τιμή παραμέτρου προσθέστε [&UserID].
Από το αριστερό τμήμα παραθύρου, επιλέξτε Ερώτημα, προσθέστε την παράμετρο UserID ως μέρος του ερωτήματός σας και κάντε κλικ στο κουμπί OK.
Σημείωμα
Στο στιγμιότυπο οθόνης κάτω από την παράμετρο color χρησιμοποιείται ως παράδειγμα (WHERE FinalTable.Color = @UserID). Εάν είναι απαραίτητο, μπορείτε να δημιουργήσετε ένα πιο σύνθετο ερώτημα.
Δημιουργία διακριτικού ενσωμάτωσης
Όταν ενσωματώνετε μια σελιδοποιημένη αναφορά για τους πελάτες σας, χρησιμοποιήστε το API Reports GenerateTokenInGroup για να λάβετε το διακριτικό ενσωμάτωσης. Αυτό το διακριτικό μπορεί επίσης να χρησιμοποιηθεί για να φιλτράρετε ορισμένα δεδομένα από τη σελιδοποιημένη αναφορά.
Μπορείτε να δημιουργήσετε ένα διακριτικό μόνο χρησιμοποιώντας μια κύρια υπηρεσία. Δεν μπορείτε να δημιουργήσετε ένα διακριτικό ως κύριος χρήστης. Η κύρια υπηρεσία πρέπει να έχει τουλάχιστον δικαιώματα μέλους στον χώρο εργασίας στον Υπηρεσία Power BI. (Εάν η κύρια υπηρεσία είναι συμβάλλων ή θεατής, δεν θα μπορεί να δημιουργήσει διακριτικό).
Για να δημιουργήσετε ένα διακριτικό, αντιστοιχίστε το username
πεδίο με τις πληροφορίες που θέλετε να εμφανίσετε. Για παράδειγμα, σε μια σελιδοποιημένη αναφορά που διαθέτει μια παράμετρο color, εάν εισαγάγετε πράσινο στο username
πεδίο, το διακριτικό ενσωμάτωσης θα περιορίσει τα ενσωματωμένα δεδομένα μόνο στα δεδομένα που έχουν πράσινο ως τιμή στη στήλη χρωμάτων.
{
"reports": [
{
"id": "8d57615e-cfed-4d60-bd21-7dc05727193c"
}
],
"identities": [
{
"username": "green",
"reports": [
"8d57615e-cfed-4d60-bd21-7dc05727193c"
]
}
]
}
Σημείωμα
Εάν δημιουργήσετε διακριτικό ενσωμάτωσης χωρίς να καθορίσετε ένα αναγνωριστικό-χρήστη, θα χρησιμοποιηθεί το αναγνωριστικό-αντικειμένου της κύριας υπηρεσίας.
Ζητήματα προς εξέταση και περιορισμοί
- Ο κύριος χρήστης δεν υποστηρίζεται με σελιδοποιημένες αναφορές για ενσωμάτωση για τους πελάτες σας. Ο κύριος χρήστης υποστηρίζεται για ενσωμάτωση για τον οργανισμό σας.
- Η κύρια υπηρεσία πρέπει να έχει δικαιώματα χώρου εργασίας μέλους ή παραπάνω (όχι θεατής ή συμβάλλων).
Σχετικό περιεχόμενο
Σχόλια
https://aka.ms/ContentUserFeedback.
Σύντομα διαθέσιμα: Καθ' όλη τη διάρκεια του 2024 θα καταργήσουμε σταδιακά τα ζητήματα GitHub ως μηχανισμό ανάδρασης για το περιεχόμενο και θα το αντικαταστήσουμε με ένα νέο σύστημα ανάδρασης. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα:Υποβολή και προβολή σχολίων για