Propagação do Token do Web Services Security
O Web Services Security tem o recurso de enviar tokens de segurança no cabeçalho de segurança de uma mensagem SOAP. Esses tokens de segurança podem ser utilizados para assinar, verificar, criptografar ou decriptografar partes da mensagem. Os tokens de segurança também podem ser enviados como tokens de segurança independentes e configurados como o responsável pela chamada no consumidor do pedido. A propagação do token do Web Services Security é usada para enviar esses tokens de segurança independentes em um elemento wsse:BinarySecurityToken dentro do cabeçalho de segurança da mensagem SOAP.
- Token do Nome do Usuário
- Token X.509
- Token Lightweight Third-Party Authentication (LTPA)
É possível configurar o Web Services Security para usar tokens de segurança customizados. O Web Services Security usa o mesmo formato do token de propagação como o recurso de propagação do atributo Segurança. O Web Services Security pode propagar todos os tipos de tokens de segurança integrados e pode propagar tipos de token customizados, enquanto eles são serializáveis pelo recurso de propagação do atributo de segurança.
- URI de Tipo de Token: http://www.ibm.com/websphere/appserver/tokentype
- Nome Local do Tipo de Token: LTPA_PROPAGATION
Quando um token de propagação for gerado, o Web Services Security reúne todos os tokens de segurança serializáveis no assunto RunAs para o encadeamento atual e serializa os tokens de segurança dentro do token wsse:BinarySecurityToken. Para ter um objeto RunAs e as credenciais que são necessárias no encadeamento atual, um login do JAAS deve ocorrer no encadeamento atual antes que um token de propagação possa ser criado.
Sob circunstâncias normais, parta um provedor de serviços, o login Java Authentication and Authorization Service (JAAS) é feito incluindo uma parte do responsável pela chamada definido para o token de entrada na configuração WS-Security. Para um cliente de serviços da Web, o login do JAAS é obtido configurando-se a autenticação básica HTTP.
- Um cliente de dentro de um serviço seguro propaga os tokens de segurança serializáveis e as credenciais a partir de um objeto RunAs atual para um servidor de recebimento de dados.
- Um cliente baseado em servidor que é protegido no contêiner da Web com autenticação básica
HTTP pode usar um token de propagação.
Para um cliente baseado em servidor, o gasto adicional para propagar tokens não é necessário, e somente a identidade é necessária e não o conjunto completo de credenciais. Entretanto, se o aplicativo cliente fizer modificações no assunto depois que ele for chamado pelo contêiner da Web, talvez seja apropriado usar um token de propagação. Se somente um token de identidade for necessário, um token LTPA comum pode ser apropriado. É possível gerar esse token LTPA a partir do objeto RunAs que é criado pelo login do JAAS.