rosalba

Il blog di Rosalba Fiore [Microsoft Certified Trainer]
posts - 398, comments - 583, trackbacks - 4693

My Links

News

Article Categories

Archives

Post Categories

Image Galleries

Al primo posto

Alcune delle Donne Attive

Alcuni dei ferri del mestiere di una MCT

Certificazioni Informatiche

elearning...funziona solo in alcuni casi!!!

Eventi

Gli MCT nel mondo

La mia zone

Link tecnici

Link un pò così

Panoramica altre Community

Post-it Articoli e post di MCT, MVP ect

Windows Vista

[70-340] La sicurezza dei web services

Una delle cose che più mi ha entusiasmato dei web services è la loro estrema praticità. Quando si creano più applicazioni che hanno delle funzionalità comuni si possono inscatolare in un web services e lo sviluppo è sicuramente più celere.

Quello che però alle volte sfugge è "una delle sue maggiori virtù, SOAP tanto per capirci, è anche il suo tallone d'achille per la sicurezza".

Perchè sicurezza e cosa ci interessa in buona sostanza:

  • l'identità del client
  • messaggio valido ed integro durante la trasmissione
  • privacy della comunicazione 

In questa faq riportata da Lorenzo  a suo tempo si trovano molte informazioni sul mondo WSE ovvero quello che ci viene in soccorso in questi casi. Per ulteriori informazioni su SOAP,WSLD e Web Services vi consiglio questo suo articolo ....ed immaginate che nel 2001 già parlava di XAML.

Ma che cosa è WSE? WSE = Web Services Enhancements ossia un tool per utilizzare la WS-Security con Asp.Net, dove per WS intendiamo Web Services Security Language ovvero uno standard per aggiungere l'autenticazione, firma e la criptazione alla comunicazione SOAP dei Web Services.

Ma WS è un set di definizioni e complessi algoritmi per risolvere i tre punti indicati? No, è uno standard.

Descrive una serie di schema per la descrizione di SOAP:Header che aggiungono informazioni ai messaggi SOAP, tanto per farcene un'idea date un occhio allo schema   http://schemas.xmlsoap.org/ws/2002/07/secext/

Per capire meglio di cosa stiamo parlando conviene prima dare uno sguardo a XML Schema for WS-SecurityPolicy.

Ma come fa il client ad autenticarsi? Ci sono tre modalità, elenchiamone due:

  1. il client utilizza una trusting authority centralizzata e poi chiama il server
  2. il server si proccupa di ottenere il token per il client

Quello che a noi ora interessa e cosa accade nel wsse. Supponiamo di utilizzare un X.509

<wsse: Security

xmlns:wsse=http://schemas.xmlsoap.org.org/ws/2002/12/secext

<wsse:BinarySecurityToken

ValueType="wsee:X509v3"

EncodingType="wsse:Base64Binary">

Idjfai......

</wsse:BinarySecurityToken>

</wsse: Security>

Se utilizzassimo i ticket Kerberos dovremmo sostituire con ValueType="wsee:Kerberosv5ST"

 

Per maggiori informazioni sull'interoperabilità di WS tutte le news le trovate su ws-i .

 

Ma WSE nel nostro Visual Studio dove si trova? Non è già "compreso" occorre scaricarlo all'indirizzo http://msdn2.microsoft.com/it-it/webservices/aa740641(en-us).aspx in questo post facciamo riferimento alla vesione 2.0.

Le classi più importanti:

  • WebServicesClientProtocol
  • SoapContext
  • Security
  • UsernameToken
  • X509SecurityToken

Mentre i namespace sono:

  • Microsoft.WebServices2
  • Microsoft.Web.Services2.Security.Token

Ma prima d'attentrari, magari nel prossimo post su cosa sono e come si usano, vediamo per concludere come si aggiunge la potenza di WSE ad un nostro progetto:

  1. installiamo WSE scegliendo l'opzione add-in
  2. apriamo/creiamo un progetto VS
  3. tasto destro sul progetto e scegliamo WSE Setting 2.0
  4. selezioniamo Permetti WSW per questo progetto

 

E cosa posso dire adesso....io studio ancora per un pò prima d'andare a dormire magari riesco a vedere anche qualcosa in televisone, ed a voi "Buona settimana".

Print | posted on lunedì 21 maggio 2007 00:05 | Filed Under [ C# ]

Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET