Benutzer mit den meisten Antworten
IT Revision Benutzerverrechtung dokumentieren

Frage
Antworten
-
Hi Susanne,
irgendwie sind Olaf und Christoph immer schneller und ich kann nur im Nachgang noch einen Tipp loswerden. :-)
Schau mal hier nach: http://www.mssqltips.com/sqlservertip/1818/script-to-auto-generate-a-security-report-for-your-sql-server-instance/
Mit der Prozedur wird eine Textausgabe inklusive HTML Tags generiert.
Die Ausgabe als .html speichern und im Browser öffnen. Ist aber nur schwarz auf weiß, also kein eye-candy. Aber hier hast Du sowohl Serverrollen, Datenbankzugriffe/rollen und Objekt-Berechtigungen erfasst.
Ich hab die Proc in meiner AdminDB auf den Servern platziert. Wenn also mal die Frage kommt, wie es derzeit mit den Berechtigungen ausschaut, dann ist es für mich nur noch ein Prozedur-Aufruf.
Server-übergreifend wäre ggf eine Powershell-Lösung denkbar (kommt halt auf die Anzahl der abzufragenden Server an) mit einem sqlcmd Aufruf und den output lässt man sich dann direkt wegschreiben.
Gruß und schönen Abend
May you never suffer the sentiment of spending a day without any purpose
- Bearbeitet Dirk Hondong Mittwoch, 22. August 2012 19:53
- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Mittwoch, 29. August 2012 07:14
-
Hi Susanne,
wenn Du die Proc als SQL Agent Job laufen lässt, dann probier es mal als sqlcmd Aufruf.
Also beim Job Step den Type auf CmdExec stellen und dann via sqlcmd den Aufruf machen
Ein Beispiel wäre dann:
sqlcmd -E -S -d DeineDBwoDieProcLiegt -Q "Execute spAuditUsersPermissions"
Im Job Step output sollte dann kein SQLSTATE 01000 mehr zu finden sein.
Gruß
Dirk
May you never suffer the sentiment of spending a day without any purpose
- Als Antwort markiert Susanne Seiler Dienstag, 6. November 2012 10:12
-
Hi,
jupps, hab mir da nen kleinen Fehler geleistet
Aus dem SQLAgent heraus kann man hinter dem -S ein $(ESCAPE_SQUOTE(SRVR)) setzen, dann sollte es wieder passen.
SQL Agent akzeptiert hier Tokens.
May you never suffer the sentiment of spending a day without any purpose
- Als Antwort markiert Susanne Seiler Dienstag, 6. November 2012 14:24
-
Hallo Susanne,
das nicht so ganz trivial, die effektiven Benutzerrechte zu ermitteln, da die Rechte aus den diversen Rollen aggregiert werden müssen (beachte: Deny geht vor Grant).
Im TechNet ScriptCenter findest Du 2 Skripte als Basis für eine Auswertungsmöglichkeit:
List all Server Permissions
List all Database Permissions- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Mittwoch, 29. August 2012 07:14
-
Hallo Susanne,
ich empfehle Dir auch mal meinen Artikel und Skript dazu:
http://www.insidesql.org/blogs/cmu/sql_server/serverweite-berechtigungen-und-verwaiste-benutzer
Serverweite Berechtigungen und verwaiste BenutzerHier werden auch die effektiven Berechtigungen, welche über Rollen vergeben werden bei den einzelnen Usern angezeigt.
Dafür habe ich die Berechtigungen auf Spaltenebene ausgelassen, die Olaf in seinem Skript hat.
HTH!
Einen schönen Tag noch,
Christoph
--
Microsoft SQL Server MVP
www.insidesql.org/blogs/cmu- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Mittwoch, 29. August 2012 07:14
-
Hallo Susanne,
darüber habe ich sowohl beim SQL Saturday, als auch im Oktober in der PASS Regionalgruppe Köln/Bonn/Düsseldorf gesprochen.
Scripte und Beispielberichte findest Du im PASS-Repository:
http://www.sqlpass.de/Mitgliedsbereich.aspxOder auf der Seite vom SQL Saturday:
http://www.sqlsaturday.com/viewsession.aspx?sat=170&sessionid=10621
Einen schönen Tag noch,
Christoph
--
Microsoft SQL Server MVP
www.insidesql.org/blogs/cmu- Als Antwort markiert Susanne Seiler Dienstag, 13. November 2012 12:23
Alle Antworten
-
Hallo Susanne,
das nicht so ganz trivial, die effektiven Benutzerrechte zu ermitteln, da die Rechte aus den diversen Rollen aggregiert werden müssen (beachte: Deny geht vor Grant).
Im TechNet ScriptCenter findest Du 2 Skripte als Basis für eine Auswertungsmöglichkeit:
List all Server Permissions
List all Database Permissions- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Mittwoch, 29. August 2012 07:14
-
Hallo Susanne,
ich empfehle Dir auch mal meinen Artikel und Skript dazu:
http://www.insidesql.org/blogs/cmu/sql_server/serverweite-berechtigungen-und-verwaiste-benutzer
Serverweite Berechtigungen und verwaiste BenutzerHier werden auch die effektiven Berechtigungen, welche über Rollen vergeben werden bei den einzelnen Usern angezeigt.
Dafür habe ich die Berechtigungen auf Spaltenebene ausgelassen, die Olaf in seinem Skript hat.
HTH!
Einen schönen Tag noch,
Christoph
--
Microsoft SQL Server MVP
www.insidesql.org/blogs/cmu- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Mittwoch, 29. August 2012 07:14
-
Hi Susanne,
irgendwie sind Olaf und Christoph immer schneller und ich kann nur im Nachgang noch einen Tipp loswerden. :-)
Schau mal hier nach: http://www.mssqltips.com/sqlservertip/1818/script-to-auto-generate-a-security-report-for-your-sql-server-instance/
Mit der Prozedur wird eine Textausgabe inklusive HTML Tags generiert.
Die Ausgabe als .html speichern und im Browser öffnen. Ist aber nur schwarz auf weiß, also kein eye-candy. Aber hier hast Du sowohl Serverrollen, Datenbankzugriffe/rollen und Objekt-Berechtigungen erfasst.
Ich hab die Proc in meiner AdminDB auf den Servern platziert. Wenn also mal die Frage kommt, wie es derzeit mit den Berechtigungen ausschaut, dann ist es für mich nur noch ein Prozedur-Aufruf.
Server-übergreifend wäre ggf eine Powershell-Lösung denkbar (kommt halt auf die Anzahl der abzufragenden Server an) mit einem sqlcmd Aufruf und den output lässt man sich dann direkt wegschreiben.
Gruß und schönen Abend
May you never suffer the sentiment of spending a day without any purpose
- Bearbeitet Dirk Hondong Mittwoch, 22. August 2012 19:53
- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Mittwoch, 29. August 2012 07:14
-
Hallo,
haben die Tipps geholfen?
Gruss,
RaulRaul Talmaciu, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können. -
Danke Olaf,
die Stored Procedure von Dirk Hondog gibt bereits einen html Code aus.
Wenn ich jedoch die SP als Job laufen lasse und als Ausgabeort im Step als html Datei speichern lasse, ist die Datei überfüllt von 'SQLSTATE 01000' Einträgen.
Dies würde ich gerne unterbinden - gibt es hierfür eine Möglichkeit!
-
Hi Susanne,
wenn Du die Proc als SQL Agent Job laufen lässt, dann probier es mal als sqlcmd Aufruf.
Also beim Job Step den Type auf CmdExec stellen und dann via sqlcmd den Aufruf machen
Ein Beispiel wäre dann:
sqlcmd -E -S -d DeineDBwoDieProcLiegt -Q "Execute spAuditUsersPermissions"
Im Job Step output sollte dann kein SQLSTATE 01000 mehr zu finden sein.
Gruß
Dirk
May you never suffer the sentiment of spending a day without any purpose
- Als Antwort markiert Susanne Seiler Dienstag, 6. November 2012 10:12
-
Hi,
jupps, hab mir da nen kleinen Fehler geleistet
Aus dem SQLAgent heraus kann man hinter dem -S ein $(ESCAPE_SQUOTE(SRVR)) setzen, dann sollte es wieder passen.
SQL Agent akzeptiert hier Tokens.
May you never suffer the sentiment of spending a day without any purpose
- Als Antwort markiert Susanne Seiler Dienstag, 6. November 2012 14:24
-
So,
das Thema wird ausgeweitet - gibt es auch eine Möglichkeit für die Verrechtung der ReportServer?
insbesondere einzelne Berichte- Bearbeitet Susanne Seiler Dienstag, 13. November 2012 12:02
-
Hallo Susanne,
darüber habe ich sowohl beim SQL Saturday, als auch im Oktober in der PASS Regionalgruppe Köln/Bonn/Düsseldorf gesprochen.
Scripte und Beispielberichte findest Du im PASS-Repository:
http://www.sqlpass.de/Mitgliedsbereich.aspxOder auf der Seite vom SQL Saturday:
http://www.sqlsaturday.com/viewsession.aspx?sat=170&sessionid=10621
Einen schönen Tag noch,
Christoph
--
Microsoft SQL Server MVP
www.insidesql.org/blogs/cmu- Als Antwort markiert Susanne Seiler Dienstag, 13. November 2012 12:23