Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Quando si utilizza Trusted_Connection=true e l'autenticazione di SQL Server, ciò influirà sulle prestazioni?

Non sono sicuro al 100% di cosa intendi:

Trusted_Connection=True;

È utilizzando le credenziali di Windows ed è equivalente al 100% a:

Integrated Security=SSPI;

o

Integrated Security=true;

Se non si desidera utilizzare la sicurezza integrata/la connessione affidabile, è necessario specificare l'ID utente e la password in modo esplicito nella stringa di connessione (e tralasciare qualsiasi riferimento a Trusted_Connection o Integrated Security )

server=yourservername;database=yourdatabase;user id=YourUser;pwd=TopSecret

Solo in questo caso viene utilizzata la modalità di autenticazione di SQL Server.

Se una di queste due impostazioni è presente (Trusted_Connection=true o Integrated Security=true/SSPI ), quindi le credenziali di Windows dell'utente corrente vengono utilizzati per l'autenticazione rispetto a SQL Server e qualsiasi user iD= l'impostazione verrà ignorata e non usato.

Per riferimento, vedere il sito delle stringhe di connessione per SQL Server 2005 con molti esempi e spiegazioni.

L'utilizzo dell'autenticazione di Windows è il modo preferito e consigliato per eseguire le operazioni, ma potrebbe verificarsi un leggero ritardo poiché SQL Server dovrebbe autenticare le credenziali rispetto ad Active Directory (in genere). Non ho idea di quanto possa essere quel leggero ritardo e non ho trovato alcun riferimento per questo.

Riassumendo:

Se specifichi Trusted_Connection=True; o Integrated Security=SSPI; o Integrated Security=true; nella stringa di connessione

==> POI (e solo allora) hai Autenticazione Windows succedendo. Qualsiasi user id= l'impostazione nella stringa di connessione verrà ignorata .

Se NON specifica una di queste impostazioni,

==> allora NON avere l'autenticazione di Windows in corso (verrà utilizzata la modalità di autenticazione SQL)