[SQL Server 2005 Express] gestione utenti e autorizzazioni

giovedì 25 giugno 2009 - 00.38

niclo Profilo | Newbie

ciao a tutti..

Negli ultimi tempi sto utilizzando SQl Server 2005 Express per gestire dei miei database.
Volevo chiedere a qualcuno se sa darmi qualche riferimento (articoli, documentazioni online o libri) che spieghino in modo approfondito il tema della gestione utenti, tra cui le autorizzazioni, i ruoli e gli schemi.

Inoltre, qualcuno saprebbe spiegarmi che tipi di utenti sono quelli creati di default all'installazione di SQL Server:
- BUILTIN\Administrators
- BUILTIN\Users
- NT AUTHORITY\SYSTEM
- PCSTEFANO\SQLServer2005MSSQLUser$PCSTEFANO$NICLOSERVER

grazie in anticipo

lbenaglia Profilo | Guru

>Volevo chiedere a qualcuno se sa darmi qualche riferimento (articoli,
>documentazioni online o libri) che spieghino in modo approfondito
>il tema della gestione utenti, tra cui le autorizzazioni, i ruoli
>e gli schemi.

Ciao,

Io ti suggerirei di iniziare dai seguenti paragrafi dei Books Online, approfondendo gli argomenti dai link presenti in ogni pagina:
http://msdn.microsoft.com/en-us/library/ms181127.aspx
http://technet.microsoft.com/en-us/library/ms190401.aspx
http://msdn.microsoft.com/en-us/library/ms191465.aspx


>Inoltre, qualcuno saprebbe spiegarmi che tipi di utenti sono
>quelli creati di default all'installazione di SQL Server:
> - BUILTIN\Administrators
Login mappata al gruppo locale Administrators;

> - BUILTIN\Users
Login mappata al gruppo locale Users;

> - NT AUTHORITY\SYSTEM
Login mappata al localsystem account

> - PCSTEFANO\SQLServer2005MSSQLUser$PCSTEFANO$NICLOSERVER
http://msdn.microsoft.com/en-us/library/ms143504.aspx

>grazie in anticipo
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

niclo Profilo | Newbie

Grazie per i link. Adesso sto guardando per capire a grandi linee il sistema di autorizzazioni.

Ti spiego meglio il perchè del mio interesse:
ho creato dei database su cui lavorano alcune mie applicazioni. Per connettermi al database ho provato sia ODBC che stringhe di connessione all'interno delle mie applicazioni (OleDBConnection).
Solitamente accedo al database con delle credenziali SQL, ovvero ho creato nel database degli appositi utenti SQL con UserId e Password. Eseguendo dei test di connessione ODBC ho verificato che un qualunque utente Windows (autenticato acorrettamente all'avvio del PC) può connettersi positivamente al database eseguendo una connessione ODBC con impostata l'autenticazione windows.

Io vorrei evitare l'accesso al DB mediante autenticazione windows e concederla solo alle applicazioni che utilizzano una corretta autenticazione con un utente SQL (passaggio obbligato di ID e Password).

Per fare questo è corretto disabilitare l'utente "NT AUTHORITY\SYSTEM"?
In caso contrario cosa potrei fare?

grazie

lbenaglia Profilo | Guru

>Io vorrei evitare l'accesso al DB mediante autenticazione windows
>e concederla solo alle applicazioni che utilizzano una corretta
>autenticazione con un utente SQL (passaggio obbligato di ID e
>Password).
La Windows Authentication non è disabilitabile, pertanto quello che puoi fare è disabilitare (o eliminare) le login mappate ad utenti o gruppi Windows.

>Per fare questo è corretto disabilitare l'utente "NT AUTHORITY\SYSTEM"?
>In caso contrario cosa potrei fare?
No, dato che nessun utente può impersonare il local system account.
Comincia dalle login BUILTIN\Administrators e BUILTIN\Users, sono convinto che otterrai il risultato sperato (occhio però a scrivere in un posto sicuro la password di "sa", altrimenti sei definitivamente fregato dato che se non hai altre login amministrative non potrai più autenticarti con tali diritti)

>grazie
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

niclo Profilo | Newbie

>La Windows Authentication non è disabilitabile, pertanto quello
>che puoi fare è disabilitare (o eliminare) le login mappate ad
>utenti o gruppi Windows.

In questo momento non ho creato nessun utente in SQL Server 2005 mappato con Windows authentication: in realtà pensavo che nel momento della creazione della nuova istanza del server, venisse creato un gruppo di default per gli utenti mappati e autenticati sulla rete windows. Sbagliato immagino..

>No, dato che nessun utente può impersonare il local system account.
>Comincia dalle login BUILTIN\Administrators e BUILTIN\Users,
>sono convinto che otterrai il risultato sperato (occhio però
>a scrivere in un posto sicuro la password di "sa", altrimenti
>sei definitivamente fregato dato che se non hai altre login amministrative
>non potrai più autenticarti con tali diritti)

Nei prossimi giorni provo a disabilitare gli utenti da te indicati e poi ti faccio sapere.
Ma i login BUILTIN\Administrators e BUILTIN\Users non sono locali (e quindi gli utenti windows sulla rete non possono appartenerci)?

lbenaglia Profilo | Guru

>Nei prossimi giorni provo a disabilitare gli utenti da te indicati
>e poi ti faccio sapere.
Io ho parlato di LOGIN non utenti!!

>Ma i login BUILTIN\Administrators e BUILTIN\Users non sono locali
>(e quindi gli utenti windows sulla rete non possono appartenerci)?
BUILTIN identifica la macchina locale.
http://www.mssqltips.com/tip.asp?tip=1017

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

niclo Profilo | Newbie

>>Nei prossimi giorni provo a disabilitare gli utenti da te indicati
>>e poi ti faccio sapere.
>Io ho parlato di LOGIN non utenti!!

Scusami intendevo LOGIN: ho sbagliato io..

>>Ma i login BUILTIN\Administrators e BUILTIN\Users non sono locali
>>(e quindi gli utenti windows sulla rete non possono appartenerci)?
>BUILTIN identifica la macchina locale.
>http://www.mssqltips.com/tip.asp?tip=1017

Grazie per il link, molto utile..
Ultimissima domanda: BUILTIN, come dicevi tu, identifica la macchina locale, ma un utente che accede da un postazione con un login appartenente in Active Directory al gruppo administrator riesce quindi a connettersi con autenticazione Windows all'istanza di SQL Server, giusto?
Quindi se vado a disabilitare il login BUILTIN\Administrators io impedisco a questi login di connettersi a SQL?

Scusa ma non sono molto ferrato sull'argomento..

lbenaglia Profilo | Guru

>Ultimissima domanda: BUILTIN, come dicevi tu, identifica la macchina
>locale, ma un utente che accede da un postazione con un login
>appartenente in Active Directory al gruppo administrator riesce
>quindi a connettersi con autenticazione Windows all'istanza di
>SQL Server, giusto?
>Quindi se vado a disabilitare il login BUILTIN\Administrators
>io impedisco a questi login di connettersi a SQL?
Esatto.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5