none
Login failed for user domain\test in un linked server RRS feed

  • Domanda

  • Ciao a tutti,

    in una stored che sto realizzando ho necessità di creare un linked server. Di conseguenza utilizzo sp_addlinkedserver passando i vari parametri.

    Successivamente eseguo sp_addsrvlogin 'linkedserver','true'

    Il linked server viene correttamente creato ma se provo a sfogliare l'albero di questo server (table, views...) mi dà errore: Login failed for user domain\test...error: 18456

    Premesso che sono connesso al primo server dal quale eseguo il comando per aggiungere il linked server con l'utente domain\test.

    Se provo a connettermi direttamente dalla management al server che vorrei aggiungere come linked server accedo tranquillamente.

    Non capisco come mai mi dia questo errore.

    Riuscite a darmi una mano?

    Grazie e ciao!

    lunedì 24 ottobre 2011 07:52

Risposte

  • Ciao,

    il problema nasce dal fatto che stai cercando di fare un "doppio hop", cioè autenticarti presso il secondo server con le credenziali con le quali ti sei autenticato nel primo server.

    Dal momento che stai utilizzando l'autenticazione di Windows (DOMAIN\test), perchè iil passaggio di credenziali funzioni occorre implementare quello che si chiama meccanismo di delega, configurando gli account ed i server su Active Directory.

    Nel BOL trovi (qui e qui) le informazioni sulla delega e sui requisiti per implementarla. Qui trovi una guida con immagini su come implementare la delega su SQL server. Ti segnalo anche questo articolo sul blog di MSDN.


    Un modo alternativo è quello di utilizzare una login SQL Server per connetterti al linked server dalla tua stored procedure, specificando sempre con sp_addsrvlogin le credenziali di accesso, ma è consigliabile, anche se più complessa, la prima soluzione.

    HTH

     

     


    Danilo Dominici MCP MCDBA MCITP MCSE MCAD Questo post è fornito "così com'è". Non conferisce garanzie o diritti di alcun tipo. Ricorda di usare la funzione "segna come risposta" per i post che ti hanno aiutato a risolvere il problema e "deseleziona come risposta" quando le risposte segnate non sono effettivamente utili. Questo è particolarmente utile per altri utenti che leggono il thread, alla ricerca di soluzioni a problemi similari. ENG: This posting is provided "AS IS" with no warranties, and confers no rights. Please remember to click "Mark as Answer" on the post that helps you, and to click "Unmark as Answer" if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.
    • Contrassegnato come risposta Irina Turcu giovedì 27 ottobre 2011 11:06
    lunedì 24 ottobre 2011 10:08
  • Ok ti ringrazio.

    Ho risolto creando un nuovo utente con privilegi di sola lettura solo sulle tabelle di mio interesse.

    Successivamente ho lanciato la sp_addlinkedsrvlogin per l'utente remoto.

     

    Tutto ok!

    • Contrassegnato come risposta Irina Turcu giovedì 27 ottobre 2011 11:05
    lunedì 24 ottobre 2011 13:16

Tutte le risposte

  • Ciao,

    il problema nasce dal fatto che stai cercando di fare un "doppio hop", cioè autenticarti presso il secondo server con le credenziali con le quali ti sei autenticato nel primo server.

    Dal momento che stai utilizzando l'autenticazione di Windows (DOMAIN\test), perchè iil passaggio di credenziali funzioni occorre implementare quello che si chiama meccanismo di delega, configurando gli account ed i server su Active Directory.

    Nel BOL trovi (qui e qui) le informazioni sulla delega e sui requisiti per implementarla. Qui trovi una guida con immagini su come implementare la delega su SQL server. Ti segnalo anche questo articolo sul blog di MSDN.


    Un modo alternativo è quello di utilizzare una login SQL Server per connetterti al linked server dalla tua stored procedure, specificando sempre con sp_addsrvlogin le credenziali di accesso, ma è consigliabile, anche se più complessa, la prima soluzione.

    HTH

     

     


    Danilo Dominici MCP MCDBA MCITP MCSE MCAD Questo post è fornito "così com'è". Non conferisce garanzie o diritti di alcun tipo. Ricorda di usare la funzione "segna come risposta" per i post che ti hanno aiutato a risolvere il problema e "deseleziona come risposta" quando le risposte segnate non sono effettivamente utili. Questo è particolarmente utile per altri utenti che leggono il thread, alla ricerca di soluzioni a problemi similari. ENG: This posting is provided "AS IS" with no warranties, and confers no rights. Please remember to click "Mark as Answer" on the post that helps you, and to click "Unmark as Answer" if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.
    • Contrassegnato come risposta Irina Turcu giovedì 27 ottobre 2011 11:06
    lunedì 24 ottobre 2011 10:08
  • Ok ti ringrazio.

    Ho risolto creando un nuovo utente con privilegi di sola lettura solo sulle tabelle di mio interesse.

    Successivamente ho lanciato la sp_addlinkedsrvlogin per l'utente remoto.

     

    Tutto ok!

    • Contrassegnato come risposta Irina Turcu giovedì 27 ottobre 2011 11:05
    lunedì 24 ottobre 2011 13:16