Specifica della sicurezza dei Servizi Web - una cronologia
Lo sviluppo della specifica di sicurezza dei servizi Web include informazioni sulla specifica di sicurezza dei servizi Web OASIS (Organization for the Advancement of Structured Information Standards). La specifica di sicurezza dei servizi Web OASIS serve come base per proteggere i servizi Web in WebSphere® Application Server.
- La configurazione della qualità del servizio (QoS) è semplificata quando si utilizzano le serie di politiche. Le serie di politiche combinano le impostazioni di configurazione, incluse quelle per il trasporto e la configurazione a livello di messaggio. Le serie di politiche e i bind generali possono essere riutilizzati in più applicazioni, rendendo i servizi Web QoS più utilizzabili.
- WS - Security per JAX - WS è supportata sia in un ambiente gestito, come un contenitore Java EE , sia in ambienti non gestiti, come Java Platform, Standard Edition (Java SE 6). Inoltre, è disponibile un'API per abilitare WS - Security nel client JAX - WS.
Attività non OASIS
- Sicurezza servizi Web
- Questa specifica definisce come allegare una firma digitale, utilizzare la codifica e utilizzare i token di protezione nei messaggi SOAP.
- WS-Policy
- Questa specifica definisce il linguaggio utilizzato per descrivere i vincoli di sicurezza e la politica degli intermediari o degli endpoint.
- WS - Trust
- Questa specifica definisce un framework per i modelli di attendibilità per stabilire l'attendibilità tra i servizi Web.
- WS - Privacy
- Questa specifica definisce un modello di come esprimere una politica di riservatezza per un servizio Web e un richiedente.
- WS-SecureConversation
- Questa specifica definisce come scambiare e stabilire un contesto protetto, che deriva le chiavi di sessione tra i servizi Web.
- Autorizzazione WS
Questa specifica definisce la normativa di autorizzazione per un servizio Web. Tuttavia, la specifica WS - Authorization non è stata pubblicata. L'implementazione esistente della sicurezza dei servizi Web si basa sui servizi Web per la specifica Java Platform, Enterprise Edition (Java EE) o Java Specification Requirements (JSR) 109. L'implementazione della sicurezza dei servizi web utilizza i controlli di autorizzazione basati sul ruolo Java EE . Per informazioni concettuali, leggere le informazioni sull'autorizzazione basata sul ruolo. Se si sviluppa un servizio Web che richiede i controlli di autorizzazione a livello di metodo, è necessario utilizzare i bean di sessione stateless per implementare il servizio Web. Per ulteriori informazioni, consultare la sezione relativa alla protezione delle applicazioni bean enterprise.
Se si sviluppa un servizio Web implementato come servlet, è possibile utilizzare un'autorizzazione a grana grossa o basata su URL nel contenitore Web. Tuttavia, in questa situazione, non Š possibile utilizzare l'identit ... dalla sicurezza dei servizi Web per i controlli di autorizzazione. È invece possibile utilizzare l'identità dal trasporto. Se si usa SOAP su HTTP, l'identità si trova nel trasporto HTTP.
La seguente figura mostra la relazione tra queste specifiche:

- La specifica richiede che i processori della sicurezza dei servizi Web comprendano correttamente lo schema in modo che il processore distingua tra l'attributo ID per la codifica XML e la firma digitale XML.
- La freschezza del messaggio, che indica se il messaggio è conforme ai vincoli di tempo predefiniti, non può essere determinata.
- Le stringhe di password digerite non rafforzano la sicurezza.
- Richiedere un attributo ID globale per la firma XML e la codifica XML.
- Utilizzare gli elementi di intestazione data / ora che indicano l'ora di creazione, ricezione o scadenza del messaggio.
- Utilizzare le stringhe di password che sono digerite con una data / ora e nonce, che è un token generato casualmente.
Le specifiche per le blue box nella figura precedente sono state proposte da vari fornitori del settore e vari eventi di interoperabilità sono stati organizzati dai fornitori per verificare e perfezionare le specifiche proposte.
Attività OASIS
Nel giugno 2002, OASIS ha ricevuto una specifica di sicurezza dei servizi Web proposta da IBM, Microsoft e VeriSign. Il Web Services Security Technical Committee (WSS TC) è stato organizzato a OASIS subito dopo la presentazione. Il comitato tecnico comprendeva molte aziende, tra cui IBM, Microsoft, VeriSign, Sun Microsystems e BEA Systems.
Nel settembre 2002, WSS TC ha pubblicato la sua prima specifica, Web Services Security Core Specification, Working Draft 01. Questa specifica includeva il contenuto della specifica di sicurezza dei servizi Web originale e il relativo addendum.
La copertura del comitato tecnico divenne più ampia man mano che la discussione procedeva. Poiché la specifica principale di sicurezza dei servizi Web consente tipi arbitrari di token di sicurezza, le proposte sono state pubblicate come profili. I profili descrivevano il metodo per incorporare i token, inclusi i token Security Assertion Markup Language ( SAML ) e i token Kerberos incorporati nei messaggi Web Services Security. Successivamente, le definizioni dell'utilizzo dei token nome utente e dei token di sicurezza binari dell' X.509, che erano state definite nella specifica originale Web Services Security Specification, sono state suddivise nei profili.
- Sicurezza dei servizi web: SOAP Message Security Draft 13 (in precedenza Web Services Security Core Specification)
- Sicurezza dei servizi Web: Profilo token nome utente bozza 2
- OASIS: Web Services Security: SOAP Message Security 1.1 (WS - Security 2004) OASIS Standard Specification, 1 febbraio 2006
- OASIS: Web Services Security UsernameToken Profile 1.1 Specifica standard OASIS, 1 febbraio 2006
- OASIS: Web Services Security X.509 Certificate Token Profile 1.1 Specifica standard OASIS, 1 febbraio 2006
La seguente specifica descrive l'utilizzo dei token Kerberos rispetto alle specifiche di sicurezza dei messaggi di sicurezza dei servizi Web. La specifica definisce come utilizzare un token Kerberos per supportare l'autenticazione e la protezione dei messaggi: OASIS: Web Services Security Kerberos Token Profile 1.1 Specifica standard OASIS, 1 febbraio 2006.
La seguente figura mostra le varie specifiche relative alla sicurezza dei servizi Web.

WebSphere Application Server fornisce anche la funzione plug-in per consentire ai provider di sicurezza di estendere la funzione di runtime e implementare alcune delle specifiche di livello superiore nello stack di sicurezza del servizio web. I punti plug-in sono esposti come SPI (Service Provider Programming Interfaces). Per ulteriori informazioni su queste SPI, consultare Implementazioni predefinite delle interfacce di programmazione del servizio di sicurezza dei servizi Web.
Sviluppo della specifica di sicurezza dei servizi Web 1.0
- Elaborazione e sintassi della Firma XML
Raccomandazione W3C , febbraio 2002 (inoltre, IETF RFC 3275, marzo 2002)
- XML canonico Versione 1.0
Raccomandazione W3C , marzo 2001
- Versione esclusiva di XML Canonicalization 1.0
Raccomandazione W3C , luglio 2002
- XML - Signature XPath Filter Versione 2.0
Raccomandazione W3C , novembre 2002
- Elaborazione e sintassi della codifica XML
Raccomandazione W3C , dicembre 2002
- Trasformazione decodifica per firma XML
Raccomandazione W3C , dicembre 2002
Queste specifiche sono supportate in WebSphere Application Server nel contesto della sicurezza dei servizi Web. Ad esempio, è possibile firmare un messaggio SOAP specificando l'opzione di integrità nei descrittori di distribuzione. Esiste un'API (application programming interface) lato client che un'applicazione può utilizzare per attivare la sicurezza dei servizi Web per la protezione di un messaggio SOAP.
La specifica OASIS Web Services Security Versione 1.0 definisce i miglioramenti utilizzati per garantire l'integrità e la riservatezza dei messaggi. Fornisce inoltre un framework generale per l'associazione dei token di sicurezza con un messaggio SOAP. La specifica è progettata per essere estensibile per supportare più formati token di sicurezza. Il particolare utilizzo del token di sicurezza è indirizzato con il profilo del token di sicurezza.
Supporto di specifiche e profili in WebSphere Application Server
OASIS sta lavorando su vari profili. Per ulteriori informazioni, fare riferimento a Organizzazione per l'avanzamento dei comitati per gli standard delle informazioni strutturati.
Il seguente elenco include i profili bozza pubblicati e i lavori del comitato tecnico di sicurezza dei servizi Web OASIS in corso.
WebSphere Application Server non supporta questi profili:
- Sicurezza dei servizi Web: SAML token profile 1.0
- Sicurezza dei servizi Web: profilo token REL (Rights Expression Language) 1.0
- Sicurezza dei Servizi Web: SOAP Messages with Attachments (SwA) profile 1.0
Il formato del collegamento del messaggio SOAP con la sicurezza dei servizi Web nella sicurezza dei servizi Web versione 1.0 è stato modificato e non è compatibile con le bozze precedenti della specifica della sicurezza dei servizi Web OASIS. L'interoperabilità tra OASIS Web Services Security Versione 1.0 e le bozze di sicurezza dei servizi Web precedenti non è supportata. Tuttavia, è possibile eseguire un'applicazione che si basa sulla bozza 13 di sicurezza dei servizi Web su WebSphere Application Server Versione 6 e successive. L'applicazione pu interagire con un'applicazione che si basa sulla bozza 13 di sicurezza dei servizi Web su WebSphere Application Server Versione 5.0.2, 5.1 o 5.1.1.
WebSphere Application Server supporta la specifica OASIS Web Services Security draft 13 e OASIS Web Services Security 1.0 . Tuttavia, in WebSphere Application Server Versione 6 e successive, il supporto di OASIS Web Services Security draft 13 è obsoleto. Tuttavia, le applicazioni sviluppate utilizzando OASIS Web Services Security draft 13 su WebSphere Application Server 5.0.2, 5.1.0 e 5.1.1 possono essere eseguite su WebSphere Application Server Versione 6 e successive. Il supporto OASIS Web Services Security Versione 1.0 è disponibile solo per le applicazioni Java Platform, Enterprise Edition (Java EE) Versione 1.4 e successive. Il formato di configurazione per il descrittore di distribuzione e il collegamento è diverso dalle versioni precedenti di WebSphere Application Server. È necessario migrare le applicazioni esistenti a Java EE 1.4 e migrare la configurazione della sicurezza dei servizi Web nel formato WebSphere Application Server Versione 6.
Sviluppo di altre specifiche di sicurezza dei servizi Web
- WS - Trust Versione 1.3
Il WS-Trust (Web Services Trust Language) utilizza i meccanismi di messaggistica sicura della sicurezza dei servizi Web per definire ulteriori primitive ed estensioni per l'emissione, lo scambio e la convalida dei token di sicurezza. WS - Trust consente l'emissione e la diffusione di credenziali all'interno di domini di attendibilità differenti. Questa specifica definisce i modi per stabilire, valutare la presenza e le relazioni di trust tra broker.
- WS-SecureConversation Versione 1.3
Il Web Services Secure Conversation Language ( WS-SecureConversation ) si basa sui modelli WS-Security e WS-Policy per fornire una comunicazione sicura tra i servizi. WS - Security si concentra sul modello di autenticazione del messaggio, ma non su un contesto di sicurezza, e quindi è soggetto a diverse forme di attacchi di sicurezza. Questa specifica definisce i meccanismi per stabilire e condividere i contesti di sicurezza e derivare le chiavi dai contesti di sicurezza, per consentire una conversazione sicura. Utilizzando il modello di estendibilità SOAP, le specifiche modulari basate su SOAP sono progettate per essere composte tra loro per fornire un ambiente di messaggistica completo.
- WS-SecurityPolicy Versione 1.2
La politica di sicurezza dei servizi Web (WS-Policy) fornisce un modello e una sintassi di scopo generale per descrivere e comunicare le politiche di un servizio Web. Le asserzioni WS - Policy esprimono le funzioni e i vincoli di un particolare servizio Web. WS-PolicyAttachments definisce diversi metodi per associare le espressioni WS-Policy ai servizi web (come WSDL). Le specifiche di Web Services Security sono state aggiornate in seguito alla ripubblicazione di WS-Security Policy nel luglio 2005, per riflettere i vincoli e le capacità dei servizi web che utilizzano WS-Security, WSTrust e WS-SecureConversation. WS-ReliableMessaging La politica è stata anche ripubblicata nel 2005 per esprimere le capacità e i vincoli dei servizi web che implementano WS-ReliableMessaging.
Attività WS-I (Web Services Interoperability Organization)
Web Services Interoperability Organization (WS-I) è un settore aperto per promuovere l'interoperabilità dei servizi Web tra fornitori, piattaforme, linguaggi di programmazione e applicazioni. L'organizzazione è un consorzio di aziende di diversi settori, tra cui IBM, Microsoft, Oracle, Sun, Novell, VeriSign, e Daimler Chrysler. WS-I ha sviluppato versioni BSP (Basic Security Profile) 1.0 e 1.1 . Le versioni BSP 1.0 e 1.1 sono costituite da una serie di specifiche di servizi Web non proprietari che chiariscono e ampliano tali specifiche per promuovere l'interoperabilità della sicurezza dei servizi Web tra le diverse implementazioni del fornitore.
- Basic Profile Versione 1.2 (BP 1.2): http://ws-i.org/profiles/basicprofile-1.2-2010-11-09.html
- Versione profilo di base 2.0 (BP 2.0): http://ws-i.org/profiles/basicprofile-2.0-2010-11-09.html
- Profilo di sicurezza di base versione 1.0 (BSP 1.0 ): http://www.ws-i.org/profiles/basicsecurityprofile-1.0.html
- Profilo di sicurezza di base versione 1.1 (BSP 1.1 ): http://www.ws-i.org/profiles/basicsecurityprofile-1.1.html
- Profilo sicuro affidabile 1.0 (RSP 1.0): http://www.ws-i.org/profiles/ReliableSecureProfile-1.0-2010-11-09.html