Método de Autenticação de Asserção de Identidade

Ao utilizar o método de autenticação de asserção de identidade (IDAssertion), o token de segurança gerado é um elemento <wsse:UsernameToken> que contém um elemento <wsse:Nome_do_usuário>.

Importante: Há uma distinção importante entre os aplicativos da Versão 5.x e Versão 6.0.x. As informações suportam somente aplicativos Versão 5.x que são usados com o WebSphere Application Server Versão 6.0.x e posterior. As informações não se aplicam a aplicativos da Versão 6.0.x.

No lado do emissor do pedido, uma rotina de tratamento de retorno de chamada é chamada para gerar o token de segurança. No receptor de pedidos, o token de segurança é validado. Essas duas operações, a geração e a validação do token, são descritas nas seções a seguir.

Validação do token de asserção de identidade:

O receptor de pedidos recupera o token de segurança IDAssertion da mensagem SOAP e o valida utilizando um módulo de login do JAAS (Java™ Authentication and Authorization Service). Com a asserção de identidade, é necessário processamento especial para estabelecer a confiança antes da asserção da identidade como a identidade estabelecida do encadeamento em execução. Esse processamento especial é definido pelo elemento <IDAssertion> no arquivo descritor de implantação, ibm-webservices-ext.xmi. Se todas as verificações de validação tiverem êxito, a identidade declarada será definida como a identidade do encadeamento em execução. Se a validação falhar, o pedido é rejeitado com uma exceção de falha de SOAP.

A configuração de login do JAAS é especificada no elemento <LoginMapping> do arquivo de ligações. As ligações padrão são especificadas no arquivo ws-security.xml. Contudo, é possível substituir essas ligações utilizando o arquivo ibm-webservices-bnd.xmi específico do aplicativo. As informações de configuração consistem em CallbackHandlerFactory e ConfigName. CallbackHandlerFactory especifica o nome de uma classe que é utilizada para criar o objeto CallbackHandler de JAAS. O WebSphere Application Server fornece a implementação com.ibm.wsspi.wssecurity.auth.callback.WSCallbackHandlerFactoryImpl CallbackHandlerFactory. ConfigName especifica uma entrada de nome de configuração JAAS.

O WebSphere Application Server procura o arquivo security.xml para obter uma correspondência de entrada de nome de configuração. Se não for localizada uma correspondência, ele procura no arquivo wsjaas.conf. O WebSphere Application Server fornece a entrada de configuração padrão system.wssecurity.IDAssertion, que é adequada para o método de autenticação de asserção de identidade.

O elemento <IDAssertion> no arquivo descritor de implementação ibm-webservices-ext.xmi especifica o processamento especial necessário quando se utiliza o método de autenticação de asserção de identidade. O elemento <IDAssertion> é composto de dois subelementos: <IDType> e <TrustMode>.

O elemento <IDType> especifica o método de asserção da identidade. Os valores suportados para asserção de identidade são:
  • Nome do usuário
  • DN (Nome Distinto)
  • Certificado X.509

Quando <IDType> é username, um token de nome de usuário (por exemplo, Bob) é fornecido. Esse nome de usuário é mapeado para um usuário no registro de usuários e é a identidade declarada após o êxito da validação de confiança. Quando o valor <IDType> é DN, um token de nome de usuário contendo um nome distinto é fornecido (por exemplo, cn=Bob Smith, o=ibm, c=us). Esse DN é mapeado para um usuário no registro de usuários e esse usuário é a identidade declarada após o êxito da validação de confiança. Quando <IDType> é X509Certificate, um token de segurança binário contendo um certificado X509 é fornecido e o valor SubjectDN do certificado (por exemplo, cn=Bob Smith, o=ibm, c=us) é extraído. Esse valor SubjectDN é mapeado para um usuário no registro de usuários e esse usuário é a identidade declarada após o êxito da validação de confiança.

O elemento <TrustMode> especifica como a autoridade de confiança, ou autoridade de asserção, fornece informações de confiança. Os valores suportados são:
  • Assinatura
  • BasicAuth
  • Nenhum valor especificado

Quando o valor <TrustMode> é Signature a assinatura é validada. Em seguida, o signatário (por exemplo, cn=IBM Authority, o=ibm, c=us) é mapeado para uma identidade no registro de usuários (por exemplo, IBMAuthority). Para assegurar que a autoridade de asserção seja de confiança, a identidade mapeada (por exemplo, IBMAuthority) é validada em relação a uma lista de identidades confiáveis. Quando o elemento <TrustMode> é BasicAuth, existe um token de nome de usuário com um nome de usuário e uma senha, que é o nome de usuário e a senha da autoridade de asserção.

O nome do usuário e a senha são validados. Se forem validados com êxito, esse nome de usuário (por exemplo, IBMAuthority) é validado em relação a uma lista de identidades confiáveis. Se não for especificado um valor para <TrustMode>, a confiança é presumida e não é executada validação adicional de confiança. Esse tipo de asserção de confiança é chamado modo de confiança presumida. Utilize o modo de confiança presumida somente em um ambiente no qual a confiança seja estabelecida utilizando algum outro mecanismo.

Se todas as validações descritas anteriormente obtiverem êxito, a identidade declarada (por exemplo, Bob) é definida como a identidade do encadeamento em execução. Se qualquer uma das validações falhar, o pedido é rejeitado com uma exceção de falha de SOAP.


Í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_authidassert
Nome do arquivo: cwbs_authidassert.html