Logo UGIdotNET

Discussione 'Errore in fase di autenticazione a webserver'

# Pubblicato il 15 giu 2011 16.41 - Rispondi
Daniele Zamuner
Errore in fase di autenticazione a webserver
Data la mia poca esperienza con i webserver ho qualche problema di troppo nel collegarmi ad un web server protetto da password. Disponendo di user e psw ho aggiunto la reference al servizio all'interno del mio progetto (VS2008).
Ora dispongo dell'oggetto che espone un unica funzione. Richiamandola però ottengo l'errore :

La richiesta HTTP non è autorizzata con lo schema di autenticazione client 'Anonymous'. Intestazione di autenticazione ricevuta dal server: 'Basic realm="null"'.

chiaramente è un problema di autenticazione ma vista la poca esperienza mi sono arenato.
Le specifiche del webserver dicono che l'autenticazione può essere effetuata tramite basic authentication oppure tramite l'utilizzo della client certificate authentication.

Il codice che provo ad eseguire è :

private void button2_Click(object sender, EventArgs e)
{
//System.Net.ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy();
//System.Net.NetworkCredential cred = new System.Net.NetworkCredential(user, psw);

ElencoAssistitiReference.ElencoAssistitiClient client = new ElencoAssistitiReference.ElencoAssistitiClient();
ElencoAssistitiReference.ElencoAssistitiDTO assistitoDTO = new ElencoAssistitiReference.ElencoAssistitiDTO();

//assistitoDTO.username = user;
//assistitoDTO.pwd = psw;

client.ClientCredentials.UserName.UserName = user;
client.ClientCredentials.UserName.Password = psw;

//client.ClientCredentials.Windows.ClientCredential.UserName = user;
//client.ClientCredentials.Windows.ClientCredential.Password = psw;

//client.ClientCredentials.HttpDigest.ClientCredential.UserName = user; //client.ClientCredentials.HttpDigest.ClientCredential.Password = psw;


assistitoDTO = client.visualizzaElencoAssistiti(assistitoDTO);
}

Dove sta l'inghippo?
Grazie mille per eventuali risposte!
# Pubblicato il 16 giu 2011 9.13 - Rispondi
Roberto Messora
Re: Errore in fase di autenticazione a webserver
il problema in questo caso è duplice: da una parte le specifiche esatte del webservice che stai utilizzando nel senso che se non soddisfatte completamente dal client che chiama non ci sarà verso di farlo funzionare, su questo fronte però bisognerebbe capire come è fatto il webservice.
dall'altra non so se basta specificare la username e la password nel codice, o se è necessario modoficare qualche parametro nel file di configurazione dell'applicazione nella parte in cui vengono specificati i parametri di reference al webservice.
# Pubblicato il 26 ott 2011 15.38 - Rispondi
Daniele Zamuner
Re: Errore in fase di autenticazione a webserver
Ache se a distanza di tempo posto la soluzione dato che può magari essere utile a qualcuno : l'errore stava nella modalità di autenticazione. Il binding nel app config andava impostato su "basicHttpBinding": nell'importazione del servizio erroneamente era stata impostata automaticamente su none!

© 2001 User Group Italiano UGIdotNET. Tutti i diritti riservati. Note legali. - Partita IVA 01927050185