none
Win/ Ult 64 bit con sqlexpress 2008 e con macchina XP in virtual mode: applicazione sulla macchina virtuale non riesce ad accedere al db sul server.__ RRS feed

  • Domanda

  • Quando l'applicazione che ho sulla macchina virtuale in xpmode prova ad accedere al db presente sulla macchina "madre" win7 ult 64 utilizzando l'utente "sa" con password esatta (ovviamente) viene mostrato questo messaggio:

     

    "impossibile eseguire l'accesso. l'accesso proviene da un dominio non trusted e non può essere utilizzato con l'autenticazione di windows"

    se provo però a creare una connessione odbc verso il server problemi non ne ho e accedo tranquillamente ai db presenti sul server.

    da cosa può dipendere?

    • Spostato Vincenzo Di RussoMVP mercoledì 21 aprile 2010 17:16 Spostato da Answers nel Forum Microsoft SQL Server, più appropriato (Da:Programmi)
    mercoledì 21 aprile 2010 17:01

Tutte le risposte

  • Quando l'applicazione che ho sulla macchina virtuale in xpmode prova ad accedere al db presente sulla macchina "madre" win7 ult 64 utilizzando l'utente "sa" con password esatta (ovviamente) viene mostrato questo messaggio:

    "impossibile eseguire l'accesso. l'accesso proviene da un dominio non trusted e non può essere utilizzato con l'autenticazione di windows"

    se provo però a creare una connessione odbc verso il server problemi non ne ho e accedo tranquillamente ai db presenti sul server.

    da cosa può dipendere?

    Ciao,

    Dipende dal fatto che la stringa di connessione è scritta per utilizzare la Windows Authentication invece che la SQL Server Authentication (senza considerare la gravità di utilizzare un account sysadmin come "sa" per autenticarsi da una applicazione...).

    Qui trovi diversi esempi di stringhe di connessione.

    Ciao!


    Lorenzo Benaglia
    Microsoft MVP - SQL Server
    http://blogs.dotnethell.it/lorenzo
    http://social.microsoft.com/Forums/it-IT/sqlserverit
    mercoledì 21 aprile 2010 19:24
    Moderatore
  • Ciao,

    dal messaggio di errore si direbbe che l'applicazione tenta di eseguire l'accesso utilizzando l'autenticazione di windows e non l'autenticazione di Sql Server necessaria per accedere con user = sa.

    Vedi
    ----
    MSSQLSERVER_18452
    http://msdn.microsoft.com/it-it/library/cc645598.aspx
    ----

    Visto anche che con odbc riesci ad accedere, direi che il bisogna indagare sull'applicazione, sei sicuro che prevede l'accesso con autenticazione di Sql Server ?

    Ciao
    Giorgio Rancati

    mercoledì 21 aprile 2010 19:33
    Moderatore
  • Vi ringrazio per la risposta.

    Solo che l'applicazione (io ho il compilato...non il codice) su macchine NON virtuali funziona tranquillamente  e accede senza problemi al server.

    Voi dite che comunque ci può essere un errore di utilizzo della stringa di connessione pur funzionando su altre macchine?

    giovedì 22 aprile 2010 14:00
  • Solo che l'applicazione (io ho il compilato...non il codice) su macchine NON virtuali funziona tranquillamente  e accede senza problemi al server.Voi dite che comunque ci può essere un errore di utilizzo della stringa di connessione pur funzionando su altre macchine?

    Se le macchine fisiche sono in dominio insieme al server che ospita l'istanza e sono state definite le opportune login mappate a gruppi/accounts di dominio, allora mi aspetto che l'autenticazione vada a buon fine.

    La tua vm con molta probabilità non è il dominio e quindi l'autenticazione fallisce.

    Inoltre non mi spiego come tu possa affermare che stai tentando di autenticarti con la login "sa" quando dal messaggio d'errore si evince che l'applicazione utilizza invece la Windows Authentication.

    Dove si imposta la connection string dell'applicazione? Esiste un file di configurazione? Una chiave di registry? E' compilata nell'eseguibile (orrore)? :-)

    Ciao!


    Lorenzo Benaglia
    Microsoft MVP - SQL Server
    http://blogs.dotnethell.it/lorenzo
    http://social.microsoft.com/Forums/it-IT/sqlserverit
    giovedì 22 aprile 2010 19:00
    Moderatore
  • Intanto non esiste alcun dominio...parliamo di una rete locale senza dominio.

    Per quanto riguarda la mia affermazione essa deriva dal fatto che l'applicazione ha una finestra di configurazione che richiede l'utente e la password di accesso al db server. Con questi dati poi compone la stringa di connessione.



    venerdì 23 aprile 2010 11:41
  • Per quanto riguarda la mia affermazione essa deriva dal fatto che l'applicazione ha una finestra di configurazione che richiede l'utente e la password di accesso al db server. Con questi dati poi compone la stringa di connessione.


    Il messaggio d'errore che hai riportato nel primo post indica inequivocabilmente che l'applicazione sta cercando di autenticarsi all'istanza utilizzando la Windows Authentication.

    La Windows Authentication ha solo senso se l'autenticazione avviene localmente o in ambiente di dominio. Esistono accrocchi per farla funzionare anche in workgroup, ma la soluzione non è supportata.

    Ora, l'applicazione nella vm che modello di autenticazione sta utilizzando per autenticarsi?

    Ciao!


    Lorenzo Benaglia
    Microsoft MVP - SQL Server
    http://blogs.dotnethell.it/lorenzo
    http://social.microsoft.com/Forums/it-IT/sqlserverit
    venerdì 23 aprile 2010 11:47
    Moderatore