Come creare il login SQL Server per un account di dominio?


14

Tutti,

Ho SQL Server 2008 installato su un server (diciamo Server1 ) in un dominio (diciamo AD ). Ho anche un account di dominio chiamato AD \ Sql1 . Questo non è un account amministratore sul dominio ( AD ), ma voglio che sia un amministratore sul Server1 . E quindi creare un accesso sul server SQL per quell'account di dominio (non account locale).

Come lo faccio?

Domande:

  1. L'utente AD \ Sql1 , lo voglio come amministratore su Server1 . Per questo, devo solo creare un account locale con lo stesso nome utente (diciamo, Server1 \ Sql1 ) e rendere l'account locale un amministratore sulla macchina. L'account locale verrà automaticamente associato all'account di dominio con lo stesso nome? Forse dovrei aggiungere qui che CREATE LOGIN [AD\Sql1] FROM WINDOWSnon ha funzionato per me. Ho provato e ho ricevuto un errore dicendo user does not exist in Windows(qualcosa del genere)
  2. Ora, se la tecnica sopra funziona. Supponiamo che AD \ Sql1 diventi un amministratore su Sever1 . Quindi, in teoria, non ho bisogno di creare un login SQL per quell'account di dominio Windows sul server SQL, giusto? Tutti gli amministratori locali che fanno parte di BUILTIT \ Admins hanno automaticamente accesso sysadmin al server SQL, giusto?

Dove ho sbagliato? Si prega di condividere eventuali URL che potrebbero spiegare meglio questo concetto.

Modifica: dovrei anche aggiungere che le domande 1 e 2 sono importanti indipendentemente. So come aggiungere un account dominio / windows come sysadmin. Ma sono interessato a come funziona la mappatura tra dominio e account locali. Il mio obiettivo qui non è come aggiungere un account locale come amministratore di sistema, posso farlo abbastanza rapidamente. La mia intenzione non è di essere scortese, ma di essere il più chiaro possibile. Se la mia domanda non è ancora chiara, per favore fatemi sapere, in modo da poter aggiungere ulteriori dettagli.

Grazie,
_UB

Modifica: grammatica

Risposte:


13

Non creare un account locale con lo stesso nome dell'account di dominio. Se si desidera aggiungere un accesso al dominio come amministratori sql, procedere come segue:

  • crea un login per l'account di dominio: create login [AD\Sql1] from windows;
  • aggiungi il login al gruppo sysadmin: exec sp_addsrvrolemember 'AD\Sql1', 'sysadmin';

Fatto. Otterresti lo stesso risultato se aggiungessi semplicemente l' AD\Sqlaccount agli amministratori locali tramite net localgroup Administrators /add AD\Sql1(da una shell CMD) ma questa non è la soluzione corretta in quanto concede AD\Sql1tutti i privilegi di amministratore NT oltre a concedergli l'amministratore SQL, che non è dichiarato come requisito quindi non è necessaria elevazione. A proposito, la regola secondo cui i membri del gruppo Administrators locale sono amministratori SQL non è implicita, è un privilegio esplicito concesso per impostazione predefinita durante l'installazione di SQL e può essere revocato, quindi è necessario verificarlo.


Grazie, questo commento ha alcune informazioni che potrei usare. Ma ho una domanda di follow-up. quando ho provato ad aggiungere l'accesso SQL usando CREATE LOGIN [AD\Sql1] FROM WINDOWS, ho ricevuto un errore che diceva che l'utente non esiste in Windows. Quindi, ho dovuto aggiungerlo come usato alla macchina locale (quindi funziona).
UB01

Esaminerò il punto che hai citato su "... gli amministratori locali sono di default sysasminssulla macchina". Grazie, lo leggerò. Ma come funziona la mappatura? Tra account di dominio e account locali con lo stesso nome.
UB01

Se la macchina su cui è installata l'istanza di SQL Server fa parte del dominio, dovresti essere in grado di aggiungere un account di dominio senza alcun problema.
JackLock,

Okay, questo è quello che ho pensato, ma ho continuato a ottenere questo errore: ...user could not be found in windows. Potrebbe esserci qualcos'altro in corso. Controllerò di nuovo.
UB01

1
Ho ricevuto un errore che diceva che l'utente non esiste in Windows : ciò significa che la tua macchina host SQL non è membro dei domini AD o membro di un dominio che si fida AD. È necessario aggiungere la macchina al dominio AD. Stai ora perseguendo il cosiddetto approccio 'NT mirrored account' (forse senza sapere che lo stai facendo ...) e questo è un approccio sbagliato. Aggiungi la macchina di hosting SQL al dominio AD.
Remus Rusanu,

2

Connettiti alla tua istanza in SSMS. Espandi sicurezza / accessi. Rt-clic su Aggiungi nuovo accesso, inserire le informazioni. Sui ruoli del server, concedere a sysadmin se si desidera che abbia il potere totale sull'istanza SQL. Fatto. Questo account non deve essere un amministratore locale sul tuo computer Windows per essere amministratore di sistema in SQL Server.


Grazie per il rapido commento. Capisco il concetto che hai espresso nella tua risposta. La mia domanda (potrebbe non essere molto chiara) è capire come funziona la relazione (o mappatura) tra account di dominio e account locali. E come questo influisce sul server SQL.
UB01

Nel Db principale viene creato un SID per qualsiasi account, dominio o solo account SQL Server.
Eric Higgins,

SID created for each account..è un concetto che capisco. Lascia che ti faccia un esempio: l'account è lo AD\Sql1stesso Server1\Sql1del server. Ognuno ha un ID di sicurezza separato mappato in modo tale che il SO sappia che sono la stessa cosa? Succede anche questo? (Sto solo indovinando, non lo so)
UB01

Vedo. Stai più cercando di capire i crediti di Windows, penso. Gli account AD e Windows locali non sono gli stessi (anche se il nome è lo stesso). Ecco alcune informazioni su come funzionano i SID di dominio e i token di accesso. Spero che questo aiuti: technet.microsoft.com/en-us/library/cc785913(v=ws.10).aspx
Eric Higgins

Grazie, leggerò quell'articolo e vedrò se questo mi aiuta a capire meglio i concetti.
UB01
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.