Jump to content

Rechte des aktuellen Users auslesen zur Selbstkontrolle


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo an alle,

 

die Aufgabe klingt eigentlich ganz einfach aber ich habe leider noch nichts passendes gefunden, aber vielleicht könnt ihr ja helfen. Meine User melden sich alle per Windowsauthorisierung an meinem SQL Server an. Nun will ich aber wissen was die angemeldete Person für Rechte hat! So zu sagen eine Art Selbstkontrolle aber nur für den aktuell gerade angemeldeten User(bei eingeschränkten Rechten würde er eh nicht mehr machen können ;) ). Schön wäre ein Weg wo ich das auf Tabellenebene sehen könnte.

 

Kann mir jemand einen Tipp geben?

bearbeitet von tutter
Link zu diesem Kommentar

Moin,

 

ja, das geht. Such mal nach "SQL Server get permissions", da findest du eine ganze Reihe von Ansätzen.

 

Beispielsweise:

[sSIS Junkie : SQL Server 2005: View all permissions (2) - Explode the roles!]
http://consultingblogs.emc.com/jamiethomson/archive/2007/02/09/SQL-Server-2005_3A00_-View-all-permissions--_2800_2_2900_.aspx
 


http://blog.sqlauthority.com/2007/10/23/sql-server-get-permissions-of-my-username-userlogin-on-server-database/
 

[sys.fn_my_permissions (Transact-SQL)]
http://msdn.microsoft.com/en-us/library/ms176097.aspx
 

Gruß, Nils

Link zu diesem Kommentar

das sieht schon mal ganz gut aus! Für Datenbankebene funktioniert es! aber kannst du mir auch einen Tipp geben wie ich das auf Tabellenebene hinbekomme?



USE


 [TESTDB];

EXECUTE AS USER = 'tester'; --klappt wunderbar

--EXECUTE AS USER = 'DOMAIN\tester'; ist ein Domain User! den kann ich leider nicht auslesen!

SELECT * FROM fn_my_permissions('NULL', 'DATABASE') 

ORDER BY subentity_name, permission_name ; 

REVERT;

GO



auch das funktioniert: 



USE [TESTDB];

SELECT * FROM fn_my_permissions (NULL, 'DATABASE');

GO



Aber ich hätte es gern auf Tabellenebene:


USE [TESTDB].[dbo].TESTTABELLE;

SELECT * FROM fn_my_permissions (NULL, 'DATABASE');

GO

kannst du da noch mal aushelfen? oder geht das nicht auf Tabellenebene?

bearbeitet von tutter
Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...