Lavorando spesso con i web services di SPS, mi sto facendo una piccola cultura di sicurezza.
Questa mattina prendo in mano il progettino windows form perchè devo ultimare alcune cose nell'architettura, lo avvio, clicco il pulsante che andrà a richiedere i dati al portale...
BUM
Errore 407.
Collego subito l'evento al fatto che ieri sera ho installato alcuni aggiornamenti di windows update e quindi "qualcosa" non va più bene (Raf, che hai fatto? qualche nuova patch? ;))
Quindi mi documento su come passare le credential al proxy, senza dover necessariamente cambiare le impostazioni del browser.
Fortunatamente vedo che il WebService ha una fantastica proprietà Proxy e quindi l'ho configurata tramite la classe WebProxy.
Il codice risulta essere molto semplice:
System.Net.NetworkCredential user = new System.Net.NetworkCredential ("nomeutente","password","dominio"); //definizioni credenziali utente
string[] exclude=new string[] {"http://*.ot"}; //elenco indirizzi da bypassare
webService = new TuoWebService(); //creazione webservice
webService.Proxy = new System.Net.WebProxy("HTTP://indirizzoproxy:porta", true, exclude, user);
In questo modo è possibile accedere alle risorne della intranet, magari da un PC non nel dominio (quindi non configurato per il proxy).
Comunque, per quanto mi riguarda, questa esperienza mi dimostra che windows update fa qualcosa, e che effettivamente alcuni comportamenti della security sono stati cambiati (e sembra proprio in meglio) :)
Però dai Raf...giù le mani dai web services! :)))