2009-03-13 10 views
13

Sono un principiante nel campo del database e questa domanda potrebbe sembrare troppo stupida ma voglio sapere perché esiste un login chiamato sa e posso eliminarlo?Posso rimuovere un accesso sa dal server SQL?

Voglio eliminarlo perché sembra avere privilegi piuttosto seri sul server di database!

Se è importante, io sto usando SQL Server Express 2008.

risposta

24

Non è possibile rimuovere l'account sa ma è possibile rename and/or disable it. Probabilmente questa è una buona pratica in quanto in caso contrario si dispone di un nome utente noto che un utente malintenzionato potrebbe lanciare un attacco di tipo brute force contro.

Accertati solo di disabilitare l'account sa con un altro account con privilegi di amministratore.

+4

Prima cosa che faccio: disabilita sa. Abbiamo un server SQL pubblico con database a bassa priorità su di esso e viene colpito con * migliaia * di attacchi sa ogni singolo giorno, settimana dopo settimana, mese dopo mese, anno dopo anno. Non vale la pena lasciarlo abilitato. –

3

sa è l'account admin! non cancellarlo, fornigli una password sicura che non fornisci a nessuno eccetto l'amministratore del database e una persona di riserva.

+0

Stavo pensando che verranno creati account separati per utenti come amministratore e persona di backup. Non pensi che non sia saggio condividere la password quando potresti gestire lo stesso dando diritti espliciti a una persona esplicita? – Hemant

+0

Credo di aver visto abbastanza casi in cui nessuno aveva diritti di amministratore perché la gente se n'era andata e non ha detto alle proprie password personali che volevano che l'amministratore fosse conosciuto da una sola persona. – HLGEM

1

sa è l'account amministratore principale, era il proprietario del database master (contenente i dati per ruoli utente, schema, ecc.), Quindi non può essere cancellato.

basta cambiare la password (e credo sia stato chiesto in corso di installazione) e creare ospite/pubblico con i privilegi più restrittive per l'uso con l'applicazione aka non utilizzare sa nella vostra applicazione (applicazione sviluppate)

0

Inoltre, in base all'ambiente in uso, è sufficiente disattivare l'autenticazione di SQL Server.

Esistono due tipi di autenticazione supportati da SQL Server - Autenticazione di Windows e Autenticazione SQL - è possibile avere entrambi o uno di essi attivo. Se si disattiva Autenticazione SQL, solo gli utenti Windows validi (come definito nel sistema) potranno utilizzare il server (le normali autorizzazioni rimangono valide, quindi è necessario aggiungere ogni account a SQL Server, il fatto che qualcuno abbia un account nel sistema non significa che possono accedere all'istanza di SQL Server).

È possibile configurarlo nelle impostazioni del server da Management Studio.

+0

Significa che chiunque può accedere al server o nessuno può accedere al server? Anche io non vedo un'opzione per farlo! – Hemant

+0

Vedere la mia risposta aggiornata. –

Problemi correlati