Especificação do Web Services Security - Uma Cronologia

O desenvolvimento da especificação do Web Services Security inclui informações sobre a especificação do Advancement of Structured Information Standards (OASIS) Web Services Security. A especificação do OASIS Web Services Security serve como uma base para a proteção de serviços da Web em WebSphere Application Server.

boas práticas: IBM® WebSphere Application Server suporta o modelo de programação Java™ API for XML-Based Web Services (JAX-WS) e o modelo de programação Java API for XML-based RPC (JAX-RPC). O JAX-WS é o modelo de programação de serviços da Web da próxima geração, estendendo a base fornecida pelo modelo de programação JAX-RPC. Ao usar o modelo de programação JAX-WS estratégico, o desenvolvimento de serviços da Web e clientes é simplificado por meio do suporte de um modelo de anotações baseado em padrões. Embora o modelo de programação JAX-RPC e seus aplicativos ainda sejam suportados, aproveite o modelo de programação JAX-WS de fácil implementação para desenvolver novos aplicativos de serviços da web e clientes.
As vantagens do uso do modelo de programação JAX-WS em WebSphere Application Server incluem:
  • A configuração do QoS (Qualities of Service) é simplificada ao utilizar conjuntos de políticas. Os conjuntos de políticas combinam definições de configuração, incluindo aquelas para configuração em nível de transporte e mensagem. Conjuntos de políticas e ligações gerais podem ser reutilizados em diversos aplicativos, tornando a QoS dos serviços da Web mais consumíveis.
  • O WS-Security para JAX-WS é suportado em um ambiente gerenciado, como um contêiner do Java EE e em ambientes não gerenciados, como o Java SE (Java Platform, Standard Edition) 6. Além disso, há uma API para ativar o WS-Security no cliente JAX-WS.

Atividades Não-OASIS

Os serviços da Web estão ganhando uma aceitação rápida como uma tecnologia viável para interoperabilidade e integração. Entretanto, a proteção dos serviços da Web é uma das qualidades primordiais de serviços que torna a adoção de serviços da Web uma solução comercial e de segmento de mercado viável para os negócios. A IBM e a Microsoft publicaram conjuntamente um White Paper sobre segurança em serviços da Web intitulado Segurança em um Mundo de Serviços da Web: Uma Arquitetura Proposta e um Roteiro. O White Paper discute as seguintes especificações iniciais e subsequentes no roteiro proposto do Web Services Security:
Web Service Security
Esta especificação define como anexar uma assinatura digital, utilizar criptografia e utilizar tokens de segurança em mensagens SOAP.
WS-Policy
Esta especificação define o idioma utilizado para descrever limitações de segurança e a política de intermediários ou nós de extremidade.
WS-Trust
Essa especificação define uma estrutura para modelos confiáveis para estabelecer a confiança entre os serviços da Web.
WS-Privacy
Essa especificação define um modelo de como expressar uma política de privacidade para um serviço da Web e um solicitante.
WS-SecureConversation
Essa especificação define como trocar e estabelecer um contexto assegurado, que deriva de chaves de sessão entre os serviços da Web.
WS-Authorization

Esta especificação define a política de autorização para um serviço da Web. Entretanto, a especificação WS-Authorization não foi publicada. A implementação existente do Web Services Security baseia-se nos Serviços da Web para Java Platform, Enterprise Edition (Java EE) ou na especificação do Java Specification Requirements (JSR) 109. A implementação do Web Services Security usufrui das verificações de autorização baseadas em função do Java EE. Para obter informações conceituais, consulte autorização baseada em função. Se você desenvolver um serviço da Web que exija verificações de autorização de nível do método, deverá usar beans de sessão stateless para implementar seu serviço da Web. Para obter informações adicionais, leia sobre segurança de aplicativos enterprise bean.

Se você desenvolver um serviço da Web que seja implementado como um servlet, poderá usar autorização de alta granularidade ou baseada em URL no contêiner da Web. Entretanto, nessa situação, não é possível usar a identidade do Web Services Security para verificações de autorização. Em vez disso, a identidade do transporte pode ser utilizada. Se você utilizar SOAP sobre HTTP, a identidade estará no transporte HTTP.

A figura a seguir mostra o relacionamento entre estas especificações:

Relacionamento das Diferentes Especificações

Em abril de 2002, a IBM, a Microsoft e a VeriSign propuseram a especificação de Web Services Security (WS-Security) e seus Web sites conforme representada pela caixa verde da figura anterior. Esta especificação incluía as idéias básicas de um token de segurança, assinatura digital XML e criptografia XML. A especificação também definia o formato para tokens do nome de usuário e tokens de segurança binários codificados. Após alguma discussão e um teste de interoperabilidade com base na especificação, as seguintes questões foram observadas:
  • A especificação exige que os processadores do Web Services Security compreendam o esquema corretamente de modo que o processador distinga entre o atributo ID para assinatura digital XML e a criptografia XML.
  • A atualidade da mensagem, que indica se a mensagem respeita restrições de tempo predefinidas, não pode ser determinada.
  • Cadeias de senhas compiladas não fortalecem a segurança.
Em agosto de 2002, a IBM, Microsoft, e a VeriSign publicaram o Adendo de Segurança dos Serviços da Web, que tentava lidar com os problemas listados anteriormente. As soluções a seguir foram abordadas no adendo:
  • Requerer um atributo de ID global para assinatura XML e criptografia XML.
  • Utilizar elementos de cabeçalho de time stamp que indiquem a hora da criação, recebimento ou expiração da mensagem.
  • Utilizar cadeias de senha que sejam compiladas com um time stamp e nonce, que é um token gerado aleatoriamente.

As especificações para as caixas azuis na figura anterior foram propostas por fornecedores de vários segmentos de mercado e vários eventos de interoperabilidade foram organizados pelos fornecedores para verificar e refinar as especificações propostas.

Atividades da OASIS

Em junho de 2002, a OASIS recebeu uma especificação proposta do Web Services Security da IBM, Microsoft e VeriSign. O WSS TC (Web Services Security Technical Committee) foi organizado na OASIS logo após a submissão. O comitê técnico incluiu muitas empresas, inclusive IBM, Microsoft, VeriSign, Sun Microsystems e BEA Systems.

Em setembro de 2002, o WSS TC publicou sua primeira especificação, Web Services Security Core Specification, Working Draft 01. Essa especificação incluía o conteúdo da especificação original do Web Services Security e de seu anexo.

A abrangência do comitê técnico tornou-se maior conforme a discussão prosseguia. Como a Web Services Security Core Specification permite tipos arbitrários de tokens de segurança, as propostas foram publicadas como perfis. Os perfis descreviam o método para tokens integrados, incluindo tokens Security Assertion Markup Language (SAML) e tokens do Kerberos integrados nas mensagens do Web Services Security. Subseqüentemente, as definições do uso para tokens de nome de usuário e tokens de segurança binários X.509, que foram definidas na Especificação de Segurança de Serviços da Web original, foram divididas nos perfis.

Os WebSphere Application Server Versões 5.0.2, 5.1 e 5.1.1 suportam as seguintes especificações:
  • Segurança de Serviços da Web: Segurança de Mensagens SOAP Rascunho 13 (anteriormente Especificação Principal de Segurança de Serviços da Web)
  • Segurança de Serviços da Web: Perfil de Token de Nome de Usuário Rascunho 2
Em abril de 2004, a especificação do Web Service Security (oficialmente chamada Web Services Security: SOAP Message Security Versão 1.0) tornou-se o padrão do OASIS Versão 1.0. Além disso, o token do Nome do Usuário e os perfis do token X.509 são especificações da Versão 1.0. O WebSphere Application Server 6 e posterior suportam as seguintes especificações do Web Services Security da OASIS:
Em fevereiro de 2006, a especificação principal do Web Service Security foi atualizada e tornou-se o padrão da OASIS Versão 1.1. Além disso, o token de Nome de Usuário, o perfil do token X.509 e o perfil do token Kerberos foram atualizados para as especificações da Versão 1.1. Partes das especificações do Web Services Security a seguir da OASIS são suportadas no WebSphere Application Server, especificamente a confirmação de assinatura, o cabeçalho criptografado e as referências de impressão digital:

A especificação a seguir descreve o uso de tokens do Kerberos com relação às especificações de segurança da mensagem do Web Services Security. A especificação define como usar um token Kerberos para suportar autenticação e proteção de mensagens: OASIS: Especificação do Padrão do OASIS: Web Services Security Kerberos Token Profile 1.1, de 1 de fevereiro de 2006.

Em 2007, o OASIS WS-SX (Web Services Secure Exchange) Technical Committee produzia e aprovava as especificações a seguir. Partes dessas especificações são suportadas pelo WebSphere Application Server Versão 7 e posterior.

A figura a seguir mostra as várias especificações relacionadas ao Web Services Security.

Especificações da OASIS

O WebSphere Application Server fornece também recurso de plug-in para permitir que provedores de segurança estendam o recurso de tempo de execução e implementem algumas das especificações mais altas na pilha do Web Service Security. Os pontos de plug-in são expostos como SPIs (Service Provider Programming Interfaces). Para obter informações adicionais sobre estas SPIs, consulte Implementações Padrão da Interface de Programação do Provedor de Serviço de Segurança dos Serviços da Web.

Desenvolvimento da especificação 1.0 do Web Services Security

A especificação do OASIS Web Services Security baseia-se nas seguintes especificações do World Wide Web Consortium (W3C). A maioria das especificações de W3C estão no status recomendado do corpo padrão.

Essas especificações são suportadas no WebSphere Application Server no contexto do Web Services Security. Por exemplo, você pode assinar uma mensagem SOAP especificando a opção de integridade nos descritores de implementação. Existe uma interface de programação de aplicativos (API) do lado do cliente que pode ser usada para ativar o Web Services Security para proteger uma mensagem SOAP.

A especificação do OASIS Web Services Security Versão 1.0 define os aprimoramentos usados para fornecer integridade e confidencialidade à mensagem. Também fornece uma estrutura geral para associar os tokens de segurança com uma mensagem SOAP. A especificação foi projetada para ser extensível para suportar vários formatos de tokens de segurança. O uso do token de segurança específico é abordado com o perfil do token de segurança.

Suporte de Especificação e Perfil no WebSphere Application Server

A OASIS está funcionando em vários perfis. Para obter informações adicionais, consulte Organization for the Advancement of Structured Information Standards Committees.

A lista a seguir inclui os perfis de rascunho publicados e o trabalho em andamento do comitê técnico do OASIS Web Services Security.

O WebSphere Application Server não suporta estes perfis:

  • Web Services Security: Perfil de Token SAML 1.0
  • Web Services Security: Perfil de Token REL (Rights Expression Language) 1.0
  • Web Services Security: Perfil SwA (SOAP Messages with Attachments) 1.0
Nota: Suporte para o rascunho 13 do Web Services Security e o rascunho 2 do perfil do token Nome do Usuário foram descontinuados em WebSphere Application Server 5.0.2, 5.1.0 e 5.1.1. Para obter informações sobre migração, consulte Migrando Aplicativos JAX-RPC Ativados para Web Services Security do Java EE Versão 1.3 para a Versão 1.4.

O formato de ligação da mensagem SOAP com Web Services Security no Web Services Security Versão 1.0 foi alterado e não é compatível com rascunhos anteriores da especificação do OASIS Web Services Security. A interoperabilidade entre o OASIS Web Services Security Versão 1.0 e rascunhos anteriores do Web Services Security não é suportada. Entretanto, é possível executar um aplicativo baseado no rascunho 13 do Web Services Security no WebSphere Application Server Versão 6 e posterior. O aplicativo pode interoperar com um aplicativo baseado no rascunho 13 do Web Services Security no WebSphere Application Server Versão 5.0.2, 5.1 ou 5.1.1.

O WebSphere Application Server suporta o rascunho 13 do OASIS Web Services Security e a especificação do OASIS Web Services Security 1.0. Mas no WebSphere Application Server Versão 6 e posterior, o suporte do rascunho 13 do OASIS Web Services Security foi descontinuado. Entretanto, aplicativos que foram desenvolvidos usando o rascunho 13 do OASIS Web Services Security no WebSphere Application Server 5.0.2, 5.1.0 e 5.1.1 podem ser executados no WebSphere Application Server Versão 6 e posterior. O suporte do OASIS Web Services Security Versão 1.0 está disponível apenas para aplicativos Java Platform, Enterprise Edition (Java EE) Versão 1.4 e posterior. O formato de configuração para o descritor de implementação e a ligação é diferente de versões anteriores do WebSphere Application Server. Você deve migrar os aplicativos existentes para Java EE 1.4 e migrar a configuração do Web Services Security para o formato WebSphere Application Server Versão 6.

Outro Desenvolvimento de Especificações do Web Services Security

As versões atualizadas mais recentemente das seguintes especificações do OASIS Web Services Security são suportadas no WebSphere Application Server no contexto do Web Services Security:
  • WS-Trust Versão 1.3

    O Web Services Trust Language (WS-Trust) usa os mecanismos de sistema de mensagens do Web Services Security para definir as extensões e primitivas adicionais para a emissão, a troca e a validação de tokens de segurança. O WS-Trust ativa a emissão e a divulgação de credenciais em diferentes domínios de confiança. Essa especificação define maneiras de estabelecer, avaliar a presença de e intermediar relacionamentos confiáveis.

  • WS-SecureConversation Versão 1.3

    O Web Services Secure Conversation Language (WS-SecureConversation) é construído nos modelos WS-Security e WS-Policy para fornecer comunicação segura entre serviços. A WS-Security prioriza o modelo de autenticação de mensagem, mas não em um contexto de segurança e, portanto, está sujeita a várias formas de ataques à segurança. Essa especificação define mecanismos para estabelecer e compartilhar contextos de segurança e derivar chaves com base nos contextos de segurança para permitir uma conversação segura. Ao usar o modelo de extensibilidade SOAP, as especificações modulares baseadas em SOAP se destinam a serem compostas entre si para fornecer um ambiente de mensagem harmonioso.

  • WS-SecurityPolicy Versão 1.2

    O Web Services Security Policy (WS-Policy) fornece um modelo de propósito geral e uma sintaxe para descrever e comunicar as políticas de um serviço da Web. As asserções do WS-Policy expressam os recursos e as restrições de um serviço da Web específico. O WS-PolicyAttachments define vários métodos para associação das expressões de WS-Policy com serviços da Web (como WSDL). As especificações do Web Services Security foram atualizadas de acordo com a republicação do WS-Security Policy em julho de 2005, para refletir as restrições e os recursos de serviços da Web que estão usando WS-Security, WSTrust e WS-SecureConversation. WS-ReliableMessaging Policy também foi republicado em 2005 para expressar os recursos e as restrições de serviços da Web que implementam o WS-ReliableMessaging.

Atividades de WS-I (Web Services Interoperability Organization)

O Web Services Interoperability Organization (WS-I) é um esforço do segmento de mercado aberto para promover a interoperabilidade de serviços da Web entre fornecedores, plataformas, linguagens de programação e aplicativos. A organização é um consórcio de empresas em vários segmentos de mercado, incluindo IBM, Microsoft, Oracle, Sun, Novell, VeriSign e Daimler Chrysler. O WS-I desenvolveu o Basic Security Profile (BSP) versões 1.0 e 1.1. As versões BSP 1.0 e 1.1 consistem em um conjunto de especificações de serviços da web não proprietárias que esclarece e amplifica essas especificações para promover a interoperabilidade do Web Services Security em implementações de fornecedores diferentes.

O WebSphere Application Server JAX-WS WS-Security suporta as seguintes especificações:

Ícone que indica o tipo de tópico Tópico de Conceito



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_wssv6chron
Nome do arquivo: cwbs_wssv6chron.html