Wie erstelle ich eine SQL Server-Anmeldung für ein Domain-Konto?


14

Alle,

Ich habe SQL Server 2008 auf einem Server (sagen wir Server1 ) in einer Domäne (sagen wir AD ) installiert . Ich habe auch ein Domänenkonto mit dem Namen AD \ Sql1 . Dies ist kein Administratorkonto in der Domäne ( AD ), aber ich möchte, dass es ein Administrator auf dem Server1 ist . Und dann erstellen Sie eine Anmeldung auf SQL Server für dieses Domänenkonto (nicht lokales Konto).

Wie mache ich das?

Fragen:

  1. Den Benutzer AD \ Sql1 möchte ich als Admin auf Server1 haben . Dazu erstelle ich einfach ein lokales Konto mit demselben Benutzernamen (z. B. Server1 \ Sql1 ) und mache das lokale Konto zu einem Administrator auf dem Computer. Wird dieses lokale Konto automatisch dem Domänenkonto mit demselben Namen zugeordnet? Vielleicht sollte ich hier hinzufügen, dass CREATE LOGIN [AD\Sql1] FROM WINDOWSes bei mir nicht funktioniert hat. Ich habe es versucht und eine Fehlermeldung erhalten user does not exist in Windows(so ähnlich)
  2. Nun, wenn die obige Technik funktioniert. Nehmen wir an, AD \ Sql1 wird ein Administrator auf Sever1 . Theoretisch muss ich also kein SQL-Login für dieses Windows-Domänenkonto auf dem SQL-Server erstellen, oder? Alle lokalen Administratoren, die Teil von BUILTIT \ Admins sind, haben automatisch Sysadmin-Zugriff auf SQL Server, oder?

Was habe ich falsch gemacht? Bitte teilen Sie alle URLs mit, die dieses Konzept besser erklären könnten.

Bearbeiten: Ich sollte auch hinzufügen, dass Frage 1 und 2 unabhängig voneinander wichtig sind. Ich weiß, wie man ein Domänen- / Windows-Konto als hinzufügt sysadmin. Ich bin jedoch daran interessiert, wie die Zuordnung zwischen Domänen- und lokalen Konten funktioniert. Mein Ziel hier ist nicht, wie man ein lokales Konto als Sysadmin hinzufügt, ich kann das ziemlich schnell tun. Meine Absicht ist es nicht unhöflich zu sein, sondern so klar wie möglich zu sein. Wenn meine Frage immer noch nicht klar ist, lassen Sie es mich bitte wissen, damit ich weitere Details hinzufügen kann.

Danke,
_UB

Bearbeiten: Grammatik

Antworten:


13

Erstellen Sie kein lokales Konto mit demselben Namen wie das Domänenkonto. Wenn Sie einen Domain-Login als SQL-Administrator hinzufügen möchten, gehen Sie wie folgt vor:

  • Erstellen Sie ein Login für das Domain-Konto: create login [AD\Sql1] from windows;
  • Fügen Sie den Login zur Sysadmin-Gruppe hinzu: exec sp_addsrvrolemember 'AD\Sql1', 'sysadmin';

Erledigt. Sie würden das gleiche Ergebnis erzielen, wenn Sie den AD\SqlAccount einfach über net localgroup Administrators /add AD\Sql1(von einer CMD-Shell) zu den lokalen Administratoren hinzufügen würden. Dies ist jedoch nicht die richtige Lösung, da AD\Sql1alle NT-Administratorrechte gewährt werden und nicht nur SQL-Administratorrechte als voraussetzung wird daher eine unnötige höhe angegeben. Übrigens: Die Regel, dass Mitglieder der lokalen Administratorengruppe SQL-Administratoren sind, ist nicht implizit. Dies ist eine explizite Berechtigung, die standardmäßig während des SQL-Setups gewährt wird. Sie kann widerrufen werden, sodass Sie danach suchen müssen.


Vielen Dank, dieser Kommentar enthält einige Informationen, die ich verwenden könnte. Aber ich habe eine Folgefrage. Beim Versuch, eine SQL-Anmeldung über hinzuzufügen, wurde die Fehlermeldung angezeigt CREATE LOGIN [AD\Sql1] FROM WINDOWS, dass der Benutzer in Windows nicht vorhanden ist. Also musste ich ihn wie gewohnt zum lokalen Rechner hinzufügen (dann klappt es).
UB01

Ich werde auf den Punkt eingehen, den Sie erwähnt haben: "Die lokalen Administratoren befinden sich standardmäßig sysasminsauf dem Computer." Danke, das werde ich nachlesen. Aber wie funktioniert das Mapping? Zwischen Domänenkonten und lokalen Konten mit demselben Namen.
UB01

Wenn der Computer, auf dem die Instanz von SQL Server installiert ist, Teil der Domäne ist, sollten Sie problemlos ein Domänenkonto hinzufügen können.
JackLock

Okay, das ist , was ich dachte, aber ich hielt diesen Fehler: ...user could not be found in windows. Vielleicht ist da noch etwas anderes los. Ich überprüfe es erneut.
UB01

1
Ich habe eine Fehlermeldung erhalten, dass der Benutzer in Windows nicht vorhanden ist. Dies bedeutet, dass Ihr SQL-Host-Computer nicht Mitglied der AD-Domänen oder einer vertrauenswürdigen Domäne ist AD. Sie sollten den Computer zur AD-Domäne hinzufügen. Sie verfolgen jetzt den sogenannten "NT Mirrored Accounts" -Ansatz (möglicherweise ohne das Wissen, dass Sie dies tun ...), und dies ist ein falscher Ansatz. Fügen Sie den SQL-Hostcomputer der AD-Domäne hinzu.
Remus Rusanu

2

Stellen Sie in SSMS eine Verbindung zu Ihrer Instanz her. Erweitern Sie Sicherheit / Anmeldungen. Klicken Sie mit der rechten Maustaste auf Neues Login hinzufügen und geben Sie die Informationen ein. Gewähren Sie ihm auf Serverrollen sysadmin, wenn Sie möchten, dass die SQL-Instanz vollständig ausgeführt wird. Erledigt. Dieses Konto muss nicht lokaler Administrator auf Ihrem Windows-Computer sein, um in SQL Server Sysadmin zu sein.


Vielen Dank für den schnellen Kommentar. Ich verstehe das Konzept, das Sie in Ihrer Antwort vermittelt haben. Meine Frage (möglicherweise nicht ganz klar) ist, wie die Beziehung (oder Zuordnung) zwischen Domänenkonten und lokalen Konten funktioniert. Und wie sich das auf SQL Server auswirkt.
UB01

Eine SID wird in der Master-Datenbank für alle Konten, Domänen- oder nur SQL Server-Konten erstellt.
Eric Higgins

SID created for each account..ist ein Konzept, das ich verstehe. Lassen Sie mich Ihnen ein Beispiel geben: Ist das Konto das AD\Sql1gleiche wie Server1\Sql1auf dem Server. Verfügt jeder über eine separate Sicherheits-ID, die so zugeordnet ist, dass das Betriebssystem weiß, dass sie identisch sind? Passiert das überhaupt? (Ich
rate

Aha. Sie versuchen mehr, Windows Creds zu verstehen, denke ich. AD- und lokale Windows-Konten sind nicht identisch (auch wenn der Name identisch ist). Hier einige Informationen zur Funktionsweise von Domain-SIDs und Zugriffstoken. Ich hoffe, das hilft: technet.microsoft.com/en-us/library/cc785913(v=ws.10).aspx
Eric Higgins

Vielen Dank, ich werde diesen Artikel lesen und sehen, ob mir das hilft, die Konzepte besser zu verstehen.
UB01
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.