Περιορισμός πρόσβασης σε δεδομένα με την ασφάλεια επιπέδου γραμμής (RLS) για το Power BI DesktopRestrict data access with row-level security (RLS) for Power BI Desktop

Μπορείτε να χρησιμοποιήσετε ασφάλεια σε επίπεδο γραμμών (RLS) με το Power BI Desktop για τον περιορισμό της πρόσβασης σε δεδομένα για συγκεκριμένους χρήστες.You can use row-level security (RLS) with Power BI Desktop to restrict data access for given users. Τα φίλτρα περιορίζουν τα δεδομένα σε επίπεδο γραμμών.Filters restrict data at the row level. Μπορείτε να ορίσετε φίλτρα μέσα σε ρόλους.You can define filters within roles.

Μπορείτε πλέον να ρυθμίσετε την RLS για μοντέλα δεδομένων που έχουν εισαχθεί στο Power BI με το Power BI Desktop.You can now configure RLS for data models imported into Power BI with Power BI Desktop. Μπορείτε επίσης να ρυθμίσετε την RLS σε σύνολα δεδομένων που χρησιμοποιούν το DirectQuery, όπως ο SQL Server.You can also configure RLS on datasets that are using DirectQuery, such as SQL Server. Στο παρελθόν, μπορούσατε να εφαρμόσετε την RLS μόνο σε μοντέλα Υπηρεσιών ανάλυσης εσωτερικής εγκατάστασης εκτός του Power BI.Previously, you were only able to implement RLS within on-premises Analysis Services models outside Power BI. Για δυναμικές συνδέσεις των Υπηρεσιών ανάλυσης, μπορείτε να ρυθμίσετε την ασφάλεια σε επίπεδο γραμμών στο μοντέλο εσωτερικής εγκατάστασης.For Analysis Services live connections, you configure Row-level security on the on-premises model. Η επιλογή ασφαλείας δεν εμφανίζεται για τα σύνολα δεδομένων δυναμικής σύνδεσης.The security option doesn't show up for live connection datasets.

Σημαντικό

Εάν έχετε ορίσει ρόλους και κανόνες στην υπηρεσία Power BI, πρέπει να δημιουργήσετε ξανά αυτούς τους ρόλους στο Power BI Desktop και να δημοσιεύσετε την αναφορά στην υπηρεσία.If you defined roles and rules within the Power BI service, you need to recreate those roles within Power BI Desktop and publish the report to the service. Μάθετε περισσότερα σχετικά με τις επιλογές για την RLS στην υπηρεσία Power BI.Learn more about options for RLS within the Power BI service.

Καθορισμός ρόλων και κανόνων στο Power BI DesktopDefine roles and rules in Power BI Desktop

Μπορείτε να καθορίσετε ρόλους και κανόνες στο Power BI Desktop.You can define roles and rules within Power BI Desktop. Όταν κάνετε δημοσίευση στο Power BI, δημοσιεύονται επίσης οι ορισμοί ρόλων.When you publish to Power BI, it also publishes the role definitions.

Για να ορίσετε ρόλους ασφαλείας, ακολουθήστε αυτά τα βήματα.To define security roles, follow these steps.

  1. Εισαγάγετε δεδομένα στην αναφορά του Power BI Desktop ή ρυθμίστε τις παραμέτρους μιας σύνδεσης DirectQuery.Import data into your Power BI Desktop report, or configure a DirectQuery connection.

    Σημείωση

    Δεν μπορείτε να ορίσετε ρόλους στο Power BI Desktop για δυναμικές συνδέσεις των Υπηρεσιών ανάλυσης.You can't define roles within Power BI Desktop for Analysis Services live connections. Αυτό πρέπει να το κάνετε στο μοντέλο Υπηρεσιών ανάλυσης.You need to do that within the Analysis Services model.

  2. Από την καρτέλα Μοντελοποίηση, επιλέξτε Διαχείριση ρόλων.From the Modeling tab, select Manage Roles.

    Επιλέξτε "Διαχείριση ρόλων"

  3. Από το παράθυρο Διαχείριση ρόλων, επιλέξτε Δημιουργία.From the Manage roles window, select Create.

    Επιλέξτε "Δημιουργία"

  4. Στην περιοχή Ρόλοι, δώστε ένα όνομα για τον ρόλο.Under Roles, provide a name for the role.

  5. Στην περιοχή Πίνακες, επιλέξτε τον πίνακα στον οποίο θέλετε να εφαρμόσετε έναν κανόνα DAX.Under Tables, select the table to which you want to apply a DAX rule.

  6. Στο πλαίσιο Παράσταση DAX φίλτρου πίνακα, καταχωρήστε τις παραστάσεις DAX.In the Table filter DAX expression box, enter the DAX expressions. Αυτή η παράσταση επιστρέφει μια τιμή true ή false.This expression returns a value of true or false. Για παράδειγμα: [Entity ID] = “Value”.For example: [Entity ID] = “Value”.

    Παράθυρο "Διαχείριση ρόλων"

    Σημείωση

    Μπορείτε να χρησιμοποιήσετε τη συνάρτηση username() μέσα σε αυτή την παράσταση.You can use username() within this expression. Έχετε υπόψη ότι η συνάρτηση username() έχει τη μορφή ΤΟΜΈΑΣ\όνομαχρήστη στο Power BI Desktop.Be aware that username() has the format of DOMAIN\username within Power BI Desktop. Στην υπηρεσία Power BI και στο Power BI Report Server, έχει τη μορφή του Κύριου ονόματος χρήστη (UPN).Within the Power BI service and Power BI Report Server, it's in the format of the user's User Principal Name (UPN). Εναλλακτικά, μπορείτε να χρησιμοποιήσετε τη συνάρτηση userprincipalname() που επιστρέφει πάντα τον χρήστη στη μορφή του κύριου ονόματος χρήστη, όνομα_χρήστη@contoso.com.Alternatively, you can use userprincipalname(), which always returns the user in the format of their user principal name, username@contoso.com.

  7. Αφού δημιουργήσετε την παράσταση DAX, μπορείτε να επιλέξετε το σημάδι ελέγχου επάνω από την παράσταση για να επικυρώσετε την παράσταση.After you've created the DAX expression, select the checkmark above the expression box to validate the expression.

    Επικύρωση παράστασης DAX

    Σημείωση

    Σε αυτό το πλαίσιο παράστασης, χρησιμοποιείτε κόμματα για να διαχωρίσετε ορίσματα συναρτήσεων DAX, ακόμη και εάν χρησιμοποιείτε τοπικές ρυθμίσεις που κανονικά χρησιμοποιούν διαχωριστικά με ερωτηματικό (π.χ. Γαλλικά ή Γερμανικά).In this expression box, you use commas to separate DAX function arguments even if you're using a locale that normally uses semicolon separators (e.g. French or German).

  8. Επιλέξτε Αποθήκευση.Select Save.

Δεν μπορείτε να αντιστοιχίσετε χρήστες σε έναν ρόλο στο Power BI Desktop.You can't assign users to a role within Power BI Desktop. Μπορείτε να τους αντιστοιχίσετε στην υπηρεσία Power BI.You assign them in the Power BI service. Μπορείτε να ενεργοποιήσετε τη δυναμική ασφάλεια στο Power BI Desktop, κάνοντας χρήση των συναρτήσεων DAX username() ή userprincipalname() και έχοντας ρυθμίσει τις παραμέτρους των κατάλληλων σχέσεων.You can enable dynamic security within Power BI Desktop by making use of the username() or userprincipalname() DAX functions and having the proper relationships configured.

Επικύρωση ρόλων στο Power BI DesktopValidate the roles within Power BI Desktop

Μετά τη δημιουργία των ρόλων σας, ελέγξτε τα αποτελέσματα των ρόλων στο Power BI Desktop.After you've created your roles, test the results of the roles within Power BI Desktop.

  1. Από την καρτέλα Μοντελοποίηση, επιλέξτε Προβολή ως ρόλων.From the Modeling tab, select View as Roles.

    Επιλέξτε "Προβολή ως ρόλων"

    Εμφανίζεται το παράθυρο Προβολή ως ρόλων, όπου βλέπετε τους ρόλους που έχετε δημιουργήσει.The View as roles window appears, where you see the roles you've created.

    Παράθυρο "Προβολή ως ρόλων"

  2. Επιλέξτε έναν ρόλο που δημιουργήσατε και, στη συνέχεια, επιλέξτε OK για να εφαρμόσετε αυτόν τον ρόλο.Select a role you created, and then select OK to apply that role.

    Η αναφορά εμφανίζει τα δεδομένα που σχετίζονται με αυτόν τον ρόλο.The report renders the data relevant for that role.

  3. Επίσης, μπορείτε να επιλέξετε Άλλος χρήστης και να παράσχετε έναν δεδομένο χρήστη.You can also select Other user and supply a given user.

    Επιλέξτε "Άλλος χρήστης"

    Είναι καλύτερα να καταχωρήσετε το κύριο όνομα χρήστη (UPN) που είναι αυτό που χρησιμοποιούν η υπηρεσία Power BI και το Power BI Report Server.It's best to supply the User Principal Name (UPN) as that's what the Power BI service and Power BI Report Server use.

    Στο Power BI Desktop, η επιλογή Άλλος χρήστης εμφανίζει διαφορετικά αποτελέσματα μόνο αν χρησιμοποιείτε δυναμική ασφάλεια με βάση τις παραστάσεις DAX.Within Power BI Desktop, Other user displays different results only if you're using dynamic security based on your DAX expressions.

  4. Επιλέξτε OK.Select OK.

    Η αναφορά αποδίδεται με βάση τα στοιχεία που μπορεί να δει ο συγκεκριμένος χρήστης.The report renders based on what that user can see.

ΠεριορισμοίLimitations

Οι τρέχοντες περιορισμοί για ασφάλεια σε επίπεδο γραμμών σε μοντέλα cloud είναι οι εξής:The current limitations for row-level security on cloud models are as follows:

  • Εάν είχατε ορίσει προηγουμένως ρόλους και κανόνες στην υπηρεσία Power BI, θα πρέπει να τους δημιουργήσετε εκ νέου στο Power BI Desktop.If you previously defined roles and rules in the Power BI service, you must re-create them in Power BI Desktop.

  • Μπορείτε να ορίσετε RLS μόνο στα σύνολα δεδομένων που δημιουργούνται με χρήση του Power BI Desktop.You can define RLS only on the datasets created with Power BI Desktop. Εάν θέλετε να ενεργοποιήσετε το RLS για σύνολα δεδομένων που έχουν δημιουργηθεί με το Excel, θα πρέπει να μετατρέψετε πρώτα τα αρχεία σας σε αρχεία Power BI Desktop (PBIX).If you want to enable RLS for datasets created with Excel, you must convert your files into Power BI Desktop (PBIX) files first. Μάθετε περισσότεραLearn more.

  • Υποστηρίζονται μόνο Εισαγωγή και συνδέσεις DirectQuery.Only Import and DirectQuery connections are supported. Ο χειρισμός των δυναμικών συνδέσεων στις Υπηρεσίες ανάλυσης γίνεται στο μοντέλο εσωτερικής εγκατάστασης.Live connections to Analysis Services are handled in the on-premises model.

Γνωστά ζητήματαKnown issues

Υπάρχει ένα γνωστό ζήτημα όπου θα παρουσιάζεται ένα μήνυμα σφάλματος κατά την προσπάθεια δημοσίευσης μιας αναφοράς που έχει δημοσιευτεί στο παρελθόν από το Power BI Desktop.There's a known issue where you'll get an error message if you try to publish a previously published report from Power BI Desktop. Το σενάριο έχει ως εξής:The scenario is as follows:

  1. Η Άννα έχει ένα σύνολο δεδομένων που έχει δημοσιευθεί στην υπηρεσία Power BI και έχει ρυθμίσει τις παραμέτρους της ασφάλειας RLS.Anna has a dataset that is published to the Power BI service and has configured RLS.

  2. Η Άννα ενημερώνει την αναφορά στο Power BI Desktop και δημοσιεύει εκ νέου.Anna updates the report in Power BI Desktop and republishes.

  3. Η Άννα λαμβάνει ένα σφάλμα.Anna receives an error.

Λύση: Δημοσιεύστε ξανά το αρχείο Power BI Desktop από την υπηρεσία Power BI, μέχρι να επιλυθεί αυτό το ζήτημα.Workaround: Republish the Power BI Desktop file from the Power BI service until this issue is resolved. Αυτό μπορείτε να το κάνετε επιλέγοντας Λήψη δεδομένων > Αρχεία.You can do that by selecting Get Data > Files.

Συνήθεις ερωτήσειςFAQ

Ερώτηση: Τι γίνεται εάν είχα δημιουργήσει προηγουμένως ρόλους και κανόνες για ένα σύνολο δεδομένων στην υπηρεσία Power BI;Question: What if I had previously created roles and rules for a dataset in the Power BI service? Θα εξακολουθούν να λειτουργούν εάν δεν κάνω τίποτα;Will they still work if I do nothing?
Απάντηση: Όχι, οι απεικονίσεις δεν θα αποδίδονται σωστά.Answer: No, visuals will not render properly. Θα χρειαστεί να δημιουργήσετε ξανά τους ρόλους και τους κανόνες στο Power BI Desktop και, στη συνέχεια, να τους δημοσιεύσετε στην υπηρεσία Power BI.You will have to re-create the roles and rules within Power BI Desktop and then publish to the Power BI service.

Ερώτηση: Μπορώ να δημιουργήσω αυτούς τους ρόλους για προελεύσεις δεδομένων Υπηρεσιών ανάλυσης;Question: Can I create these roles for Analysis Services data sources?
Απάντηση: Μπορείτε, αν έχετε εισαγάγει τα δεδομένα στο Power BI Desktop.Answer: You can if you imported the data into Power BI Desktop. Εάν χρησιμοποιείτε δυναμική σύνδεση, δεν θα έχετε τη δυνατότητα να ρυθμίσετε τις παραμέτρους RLS στην υπηρεσία Power BI.If you are using a live connection, you will not be able to configure RLS within the Power BI service. Αυτές ορίζονται στο μοντέλο Υπηρεσιών ανάλυσης εσωτερικής εγκατάστασης.This is defined within the Analysis Services model on-premises.

Ερώτηση: Μπορώ να χρησιμοποιήσω το RLS για να περιορίσω τις στήλες ή τις μετρήσεις που είναι προσβάσιμες από τους χρήστες μου;Question: Can I use RLS to limit the columns or measures accessible by my users?
Απάντηση: Όχι, εάν ένας χρήστης έχει πρόσβαση σε μια συγκεκριμένη γραμμή δεδομένων, θα μπορεί να βλέπει όλες τις στήλες δεδομένων για τη συγκεκριμένη γραμμή.Answer: No, if a user has access to a particular row of data, they can see all the columns of data for that row.

Ερώτηση: Το RLS μού επιτρέπει να αποκρύπτω λεπτομερή δεδομένα, αλλά να παρέχω πρόσβαση σε δεδομένα που συνοψίζονται σε απεικονίσεις;Question: Does RLS let me hide detailed data but give access to data summarized in visuals?
Απάντηση: Όχι. Μπορείτε να ασφαλίσετε μεμονωμένες σειρές δεδομένων, αλλά οι χρήστες μπορούν πάντα να βλέπουν είτε τις λεπτομέρειες είτε τα συνοπτικά δεδομένα.Answer: No, you secure individual rows of data but users can always see either the details or the summarized data.

Ερώτηση: Η προέλευση δεδομένων μου έχει ήδη καθορισμένους ρόλους ασφαλείας (για παράδειγμα, ρόλοι SQL Server ή SAP BW).Question: My data source already has security roles defined (for example SQL Server roles or SAP BW roles). Ποια είναι η σχέση μεταξύ αυτών και των RLS;What is the relationship between these and RLS?
Απάντηση: Η απάντηση εξαρτάται από το αν εισαγάγετε δεδομένα ή χρησιμοποιείτε το DirectQuery.Answer: The answer depends on whether you're importing data or using DirectQuery. Εάν εισαγάγετε δεδομένα στο σύνολο δεδομένων σας Power BI, οι ρόλοι ασφαλείας στην προέλευση δεδομένων σας δεν χρησιμοποιούνται.If you're importing data into your Power BI dataset, the security roles in your data source aren't used. Σε αυτήν την περίπτωση, θα πρέπει να ορίσετε το RLS για επιβολή ρόλων ασφαλείας για χρήστες που συνδέονται στο Power BI.In this case, you should define RLS to enforce security rules for users who connect in Power BI. Εάν χρησιμοποιείτε το DirectQuery, χρησιμοποιούνται οι ρόλοι ασφαλείας στην προέλευση δεδομένων σας.If you're using DirectQuery, the security roles in your data source are used. Όταν ένας χρήστης ανοίγει μια αναφορά Power BI, στέλνει ένα ερώτημα στην υποκείμενη προέλευση δεδομένων, που εφαρμόζει ρόλους ασφαλείας στα δεδομένα με βάση τα διαπιστευτήρια χρήστη.When a user opens a report Power BI sends a query to the underlying data source, which applies security rules to the data based on the user's credentials.

Επόμενα βήματαNext steps

Για περισσότερες πληροφορίες σχετικές με αυτό το άρθρο, ελέγξτε τις παρακάτω προελεύσεις:For more information related to this article, check out the following resources: