Premessa:
Vi ricordate quando ancora si creavano pagine asp "ponte" tra due server in cui bastava mettere una querystring studiata per ben benino per far creare ad un secondo server la mail, la cartella e tutto quanto non si riusciva a fare dal server dal quale si lavorava (una sorta di webservice primordiale)? Bene è già dai quei tempi che continuo a borbottare che sistemi del genere (anche se protetti con password di NT o quel cavolo che si voleva) erano insicuri.
Poi si è passati al soap...e già si intravedeva una buona soluzione: obbligare chi vuole accedere al servizio (ex pagine asp con queryString) ad aggiungere un semplice header nell'intestazione http che facesse riferimento al SOAP. :-) wow la paura che con un link studiato apposta messo da qualche parte su internet, uno potesse fare quello che voleva sui sistemi già svaniva...
Ma, sfortunatamente, ...IL GET ed il POST funzionavano lo stesso...
Con l'arrivo dei webservice integrati in .net speravo nell'obbligatorietà di utilizzo del metodo soap e non più del get&post...ma anche li il nulla di fatto.
Poi ho scoperto che con una semplice (e x fortuna non tanto nascosta) modifica al machine.config (o web.config) è possibile DISABILITARE questi due protocolli!! (poi spiego, anzi faccio spiegare come)
A mio malgrado però ho sempre notato che la mia "teoria" della pericolosità di lasciare il GET e POST attivi per i webservice è sempre stata sormontata dalla evidente comodità per alcuni sviluppatori di fare un semplice get o post per avere le risposte dai webservice...
Ora (ed ecco il motivo del mio post) a due anni di distanza dalla sua pubblicazione ho scoperto questo articolo sul sito di microsoft che parla appunto di tutto questo!!
Eccolo (spiega -meglio di me- il perchè e come correggere il problema + eventuali problemi collaterali): http://www.microsoft.com/italy/msdn/library/webservices/disHTT.asp
(l'ho già stampato in mille copie ;-P)
Nel mio continuo tentativo di migliorare il mio "codice" di .net mi sono imbattuto in questo
articolo sull'msdn italiano.
Tratta di come creare con dei custom control, delle colonne personalizzate per i datagrid.
L'idea di utilizzare dei custom control x questa cosa l'avevo già avuta, ma non avendo enormi basi non mi era uscita propio bene, ora ho capito come si fa.
Ma quello che veramente mi ha aiutato più di tutto non è tanto l'articolo in se ma il sito a cui fa riferimento:
www.metabuilders.com/. Fateci caso alla barra a destra...ci sono dei "CustomDataColumn" molto comodi..il tutto con codici sorgenti!.
Ho appena finito di dare una occhiata a questo articolo (da cui il titolo del post) apparso su aspitalia.
Non avevo mai avuto la possibilità di poter testare (e vedere sul campo) il Web Services Enhancements, che così di primo aggancio sembra essere proprio l'ideale erede dell'attuale web service (non del remoting come giustamente indcato anche nell'articolo).
Appena la vita (??) mi lascerà un pò di tregua testerò questa cosa misteriosa...
Magari il prossimo web service lo farò con il wse?
...ma adesso?
Non so cosa ci farò, quando lo userò e come lo userò ma anche questo blog ha il suo inizio...
Ma sarà decente?