Asserções de Identidade com Validação de Confiança
Se você quiser que um aplicativo ou provedor de sistema execute uma asserção de identidade com validação da confiança, isso poderá ser feito com o uso da estrutura de login JAAS (Java™ Authentication and Authorization Service), em que a validação da confiança é executada em um módulo de login e a criação da credencial em outro. Esses dois módulos de login customizado são utilizados para criar uma configuração de login do JAAS que executa um login em uma asserção de identidade.
Dois módulos de login customizados são requeridos:
- Um módulo de login de associação confiável implementado pelo usuário. Esse módulo de login executa qualquer verificação de confiança que o usuário exigir. Quando a confiança é verificada, o status de verificação de confiança e a identidade de login devem ser colocados em um mapa no estado compartilhado do módulo de login para permitir que o módulo de login de criação de credencial utilize essas informações.
O mapa deve ser armazenado na propriedade com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.state. Os mapas de estado contêm as seguintes informações:
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.trusted – set to true se confiável e false se não confiável.
- com.ibm.wsspi.security.common.auth.module.IdenityAssertionLoginModule.principal - contém o proprietário da identidade.
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.certificates - contém o certificado da identidade
- O módulo com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule
executa a criação da credencial. Ele requer que as informações de estado
de confiança estejam no estado compartilhado do contexto de login. Esse módulo de login é protegido
pelas permissões de tempo de execução de segurança Java 2 para o seguinte:
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.initialize
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.login
IdentityAssertionLoginModule procura as informações de confiança na
propriedade de estado compartilhado,
com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.state.
É um mapa que contém o status de confiança e a identidade utilizada para efetuar login. O mapa inclui o seguinte:
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.trusted - se configurado para true é confiável, false se não for confiável.
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.principal - se um proprietário for utilizado, contém o proprietário da identidade necessária para efetuar login.
- com.ibm.wsspi.security.common.auth.module.IdentityAssertionLoginModule.certificates – se um certificado for utilizado, ele conterá uma matriz de uma cadeia de certificados que inclui a identidade necessária para efetuar login.
Uma WSLoginFailedException é retornada se o estado, confiança, ou as informações de identidade estiverem faltando. O módulo de login executa, então, um login da identidade. O assunto agora contém a nova identidade.