Ich verwende SQL Server 2008 auf Small Business Server 2003; Client verwendet WinXP.
Ich habe meiner Active Directory-Sicherheitsgruppe einen Benutzer hinzugefügt. Warum kann dieser Benutzer nicht sofort auf die Datenbank zugreifen? Es scheint, dass es eine Verzögerung gibt, bevor der Benutzer in SQL Server erkannt wird.
Ich verwende AD-Sicherheitsgruppen ausdrücklich für Berechtigungen, damit ich keine einzelnen Benutzer in SQL Server hinzufügen muss. Im Endeffekt muss ich nichts weiter tun, als den Benutzer zur AD-Sicherheitsgruppe hinzuzufügen, um Zugriff zu gewähren.
Aber aus irgendeinem Grund erkennt SQL Server den Zusatz nicht sofort. Ich habe das schon einige Male gesehen. Ich füge den Benutzer der Gruppe hinzu, aber dieser Benutzer kann erst am nächsten Tag auf Daten zugreifen. Es scheint, dass Active Directory nicht in Echtzeit abgefragt wird. Können Sie das bestätigen?
Was muss ich tun, damit SQL Server die Liste der Benutzer aus Active Directory "aktualisiert"?
quelle
Antworten:
Der Benutzer muss sich von seiner Workstation abmelden und wieder anmelden. Aus diesem Grund scheinen die Änderungen am nächsten Tag wirksam zu werden. Der Grund dafür ist, dass der Benutzer beim Anmelden am nächsten Tag ein neues Token vom Domänencontroller erhält und dieses Token die Liste der Domänengruppen enthält, denen er angehört. Dieses Token mit der Liste der Domänengruppen wird nur aktualisiert, wenn sich der Benutzer bei seinem Computer anmeldet. Wenn sich der Benutzer also nie abmeldet, wird das Token nie aktualisiert.
Es gibt auch Verzögerungen bei der Domänenreplikation an mehreren Standorten, die berücksichtigt werden müssen, wenn sich Ihre Domänencontroller an verschiedenen physischen Standorten befinden.
quelle
klist purge
unter dba.stackexchange.com/a/44922/29371 empfohlen , jedoch mit dem Vorbehalt, dass andere zwischengespeicherte Ressourcenzugriffe, mit denen der Benutzer erneut eine Verbindung herstellen müsste, möglicherweise unterbrochen werden .Wenn sich ein Benutzer anmeldet, wird ihm ein Sicherheitstoken zugewiesen, das alle Informationen zu seiner Gruppenmitgliedschaft enthält.
Dieses Token bleibt so lange bestehen, bis sich der Benutzer abmeldet - und zu diesem Zeitpunkt wird es verworfen -, auch wenn Sie in der Zwischenzeit Änderungen an der Gruppenmitgliedschaft in AD vornehmen. Die von Ihnen vorgenommenen Änderungen werden erst wirksam, wenn sich der Benutzer das nächste Mal anmeldet und ein neues Sicherheitstoken erhält.
Sie können dasselbe Szenario reproduzieren, wenn Sie beispielsweise Berechtigungen für ein Dateisystem zuweisen. Es ist ein AD-Verhalten, kein SQL Server-Verhalten.
quelle
Das heißt, Sie erhalten sofort neue Anmeldeinformationen, wenn Sie ein cmd / script wie folgt ausführen:
mit cmd.exe (nicht Powershell, ich konnte das Zitat nicht richtig verstehen).
Auf diese Weise erhalten Sie jedes Mal ein neues Token (müssen aber Ihr Passwort eingeben). Sie könnten wahrscheinlich auch etwas mit einem gespeicherten Passwort-Text machen, wenn die Dinge zu lästig wären.
Sowieso arbeitet für mich und ich hoffe, dass es jemand anderem hilft.
quelle