Trasferire login e password tra istanze di SQL Server

di Luca Bianchi, in SQL Server,

Sono molte le necessità per le quali si rende necessario trasferire degli account da una istanza di SQL Server ad un'altra.

I newsgroup sono pieni di quesiti posti da utenti allarmati dal fatto che a seguito di un restore o di un attach di un database su un server differente tutti i permessi impostati sugli oggetti sono andati persi. In realtà non sono i permessi ad essersi persi ma si è incappati nel cosiddetto fenomeno degli utenti orfani che si verifica per la rottura del legame esistente tra il login, ovvero colui che accede all'istanza di SQL Server, ed il rispettivo user (il soggetto che accede al database e che dispone dei necessari permessi sugli oggetti). Ciò è dovuto al fatto che il sid dello user (portato con il backup/attach) non corrisponde al sid del nuovo login a cui lo stesso user dovrebbe essere associato.

Nei casi in cui si debba semplicemente procedere ad una migrazione di un database da un server all'altro possiamo non porci alcuna preoccupazione e creare un nuovo login nel server di destinazione, associarlo allo user già presente nel database utilizzando l'istruzione sp_change_users_login e ripristinare in questo modo la piena funzionalità.

Ci sono scenari in cui la sp_change_users_login non può essere una strada percorribile; mi riferisco agli scenari di Log Shipping e di Database Mirroring dove per ovvie ragioni sarebbe preferibile non dover ricorrere, in caso di failover, alla necessità di rimappare ogni user con il rispettivo login.

La soluzione, in questi casi, è quella di utilizzare le indicazioni presenti in questo articolo della kb; per SQL Server 2005 la soluzione è invece in quest'altro articolo. Resta sempre percorribile, ovviamente, utilizzare direttamente il comando CREATE LOGIN per ricreare un account fornendo come parametri il SID e la password hashed.

Bye

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Nella stessa categoria
I più letti del mese