Ich benutze Cloudera 5.4.2 mit Sentry und gewähre erfolgreich den Zugriff auf Rollen in Datenbanken. Meine Herausforderung besteht jetzt darin, eine Gruppe zu haben, die nur eine Tabelle aus einer Datenbank mit vielen anderen Tabellen lesen kann. Ich konnte SELECT für eine bestimmte Tabelle nicht erteilen, wenn die Rolle keine Berechtigungen für die Datenbank besitzt. Wenn ich mir die Cloudera-Dokumentation anschaue, sehe ich kein Beispiel dafür, und die Formulierung um das Gewähren von Tabellenzugriff macht es klar.Sentry-Zuschuss für nur eine Tabelle in Datenbank auswählen
Hier ist ein Beispiel, was ich ausführen möchte, um die Rolle test
Zugriff auf die Tabelle private_table
ohne Zugriff auf andere Tabellen in der Datenbank testdb
.
CREATE ROLE test;
GRANT ROLE test to group `test-group`;
GRANT SELECT ON TABLE testdb.private_table TO ROLE test;