Ich habe ein PowerView mit einer BISM-Verbindung im Enterprise Portal von AX erstellt. Dieser PowerView-Bericht wird von mehr als 100 Benutzern verwendet. Ich möchte, dass jeder Benutzer seine Daten im PowerView anzeigt, anstatt die vollständigen Daten anzuzeigen. Eine Option besteht darin, mehr als 100 Sicherheitsrollen in SSAS (multidimensional) zu erstellen, was keine praktikable Option ist. Bitte zeigen Sie mir, wie ich in PowerView dynamische Sicherheit erreichen kann, so dass jeder Benutzer seine eigene Ansicht sieht. Vielen Dank.So implementieren Sie die dynamische Sicherheit in PowerView
Antwort
Power View bietet keine Sicherheit. Sie müssen dies in SSAS tun, aber Sie brauchen nicht mehr als 100 Sicherheitsrollen. Sie werden sich mit dynamischer Sicherheit befassen wollen. Um dynamische Sicherheit zu schaffen, müssen Sie einen Benutzer mit den Informationen verbinden, die er sehen sollte. Dies bedeutet in der Regel, ein Feld zu einer vorhandenen Tabelle hinzuzufügen oder neue Tabellen zu erstellen.
Wenn alle Benutzer mit den gleichen Attributen gesichert sind, können sie in einer einzigen Rolle enthalten sein. Wenn einige Benutzer basierend auf einem Attribut und andere auf einem anderen Attribut gesichert sind, benötigen Sie möglicherweise mehrere Rollen.
So funktioniert das.
- Erstellen Sie eine Tabelle mit allen Benutzern, die Zugriff auf Ihren Cube benötigen.
- Erstellen Sie eine Bridge-Tabelle, die die Benutzer mit dem Attribut verknüpft, für das Sie ihren Zugriff sichern. Zum Beispiel können Benutzer möglicherweise nur bestimmte Produkte sehen, so dass Sie eine Tabelle mit Benutzer-IDs und Produkt-IDs haben.
- Fügen Sie diese Tabellen zu Ihrem DSV hinzu.
- Erstellen Sie eine Benutzerdimension.
- Erstellen Sie eine Measuregruppe basierend auf Ihrer Sicherheitsbridchtabelle
- Erstellen Sie eine Rolle für diesen Benutzertyp, und fügen Sie dem Erlaubten Membersatz eine MDX-Anweisung hinzu. Setzen Sie außerdem das Kontrollkästchen Sichtbare Summen aktivieren.
- Füllen Sie die Mitglieder für die Rolle auf, vorzugsweise über eine AD-Gruppe und nicht einzeln, wenn Sie über 100 Benutzer haben.
Sie erlaubte Mitglied Satz so etwas wie
Exists(
{[Product].[Product ID].members},
STRTOSET("[Users].[UserName].[UserName].&[" + Username() + "]"),
"Bridge User Product"
)
schauen Sie eine gute Blog-Post here und ein gutes Video über SSAS Sicherheit here (dynamische Sicherheit beginnt um die 35-Minuten-Marke) finden .
- 1. So implementieren Sie Sicherheit für Webdienste in einem Unternehmen
- 2. So sichern Sie Daten über WCF (dynamische Sicherheit)
- 3. Langsame dynamische Sicherheit in SSAS
- 4. So implementieren Sie dynamische Datensätze in einem SSRS-Bericht
- 5. So implementieren Sie dynamische Werte auf Menüelement in Android
- 6. So testen Sie die Thread-Sicherheit
- 7. So implementieren Sie die Lokalisierung in web.sitemap
- 8. So implementieren Sie die Einzelauswahl in RecyclerView?
- 9. So implementieren Sie die Ablaufverfolgung in .net
- 10. So implementieren Sie die Bestellungsanalyse in MATLAB
- 11. So implementieren Sie die Summation in GAMS
- 12. So implementieren Sie die Authentifizierung in WebService
- 13. So implementieren Sie die Barrierefreiheit in Java
- 14. So konfigurieren Sie CSRF-Sicherheit in JSF
- 15. So erkennen Sie dynamische Hindernisse in Punktwolken
- 16. So implementieren Sie die Volltext-Volltext-Suchmaschine
- 17. So implementieren Sie die Datenbankzugriffssteuerung auf Zeilenbasis
- 18. So implementieren Sie IAsyncOperationWithProgress
- 19. So deaktivieren Sie programmgesteuert die Sicherheit in WCF
- 20. Dynamische Sicherheit für ASP.NET MVC
- 21. So implementieren Sie die automatische Speicherung
- 22. So implementieren Sie besser
- 23. So verhindern Sie die dynamische Sortierung
- 24. Implementieren der Sicherheit für Sitzungen
- 25. Django, dynamische Urlconfs, Thread-Sicherheit
- 26. So implementieren Sie die indizierte Standardeigenschaft []
- 27. So implementieren Sie die interaktive iOS8-Benachrichtigung
- 28. So implementieren Sie die isRePin() -Funktion
- 29. So strukturieren Sie die dynamische MongoDb-Abfrage