Visão Geral de Interfaces de Programação de Aplicativos (APIs) para SAML

O suporte do WebSphere Application Server para SAML fornece interfaces de programação de aplicativos (APIs) públicos que é possível usar para construir aplicativos que reconhecem o token SAML.

Use a API SAMLTokenFactory para criar, validar e autenticar tokens SAML e para criar JAAS subjects que representam tokens SAML. A implementação de SAMLTokenFactory suporta a OASIS SAML v1.1 Token Specification e a OASIS SAML v2.0 Token Specification. Use a API WSSTrustClient para enviar, emitir e validar mensagens de pedido WS-Trust para o STS especificado. A implementação de WSSTrustClient suporta a WS-Trust v1.3 Specification e a WS-Trust v1.2 Specification, e suporta o espaço de nomes SOAP v1.1 e o espaço de nomes SOAP v1.2.

Nota: A partir do WebSphere Application Server Release 8 é possível usar a classe com.ibm.websphere.wssecurity.wssapi.token.SAMLToken na interface de programação de aplicativos (API) do Web Services Security (WSS). Quando não houver nenhum problema de confusão, o termo SAMLToken será usado em vez de usar o nome completo do pacote. É possível usar a API do WSS para solicitar o processamento do SAMLToken a partir de um Security Token Service (STS) externo, para propagar SAMLTokens nas mensagens de solicitação SOAP e para usar uma chave simétrica ou assimétrica identificada pelos SAMLTokens para proteger mensagens SOAP.

O suporte do WSS API SAML complementa as interfaces com.ibm.websphere.wssecurity.wssapi.token.SAMLTokenFactory e com.ibm.websphere.wssecurity.wssapi.trust.WSSTrustClient. Os SAMLTokens que são gerados usando o método com.ibm.websphere.wssecurity.wssapi.WSSFactory newSecurityToken() podem ser processados pelas interfaces de programação SAMLTokenFactory e WSSTrustClient. Por outro lado, os SAMLTokens que são gerados pelo SAMLTokenFactory ou retornados pelo WSSTrustClient podem ser usados no WSS API. Decidir qual API será usada no seu aplicativo depende das suas necessidades específicas. O suporte do WSS API SAML é autocontido no sentido em que ele fornece uma funcionalidade equivalente à funcionalidade das interfaces SAMLTokenFactory e WSSTrustClient até o ponto em que os aplicativos clientes de serviços da Web forem interessados. A interface SAMLTokenFactory possui funções adicionais para validar os SAMLTokens e para criar o Assunto JAAS que representa SAMLTokens autenticados. Essa validação é útil para o lado do provedor de serviços da Web. Quando desenvolver seus aplicativos para consumir os SAMLTokens, a interface de programação SAMLTokenFactory será a mais adequada.

O WebSphere Application Server com SAML fornece as seguintes APIs que implementam o SAML como um token de segurança. Para obter informações sobre os métodos nestas APIs, consulte a documentação da API de biblioteca de tokens SAML, que descreve cada uma das APIs e fornece o código de amostra.

A API SAMLTokenFactory é a principal interface de programação de tokens SAML. Usando esta API, você pode criar tokens SAML, inserir atributos SAML, analisar e validar asserções SAML como representações XML para os tokens SAML e criar JAAS subjects que representam a identidade do usuário e atributos conforme definido em tokens SAML.
  • com.ibm.websphere.wssecurity.wssapi.token.SAMLTokenFactory
  • com.ibm.websphere.wssecurity.wssapi.token.SAMLToken
As Interfaces de Programação do Sistema (SPIs) SAMLAttribute e SAMLNameID representam os atributos SAML e os identificadores de nomes de usuário SAML.
  • com.ibm.wsspi.wssecurity.saml.data.SAMLAttribute
  • com.ibm.wsspi.wssecurity.saml.data.SAMLNameID
Usando as seguintes APIs SAML, você pode especificar como os tokens SAML são criados, e como os documentos XML de asserção SAML são validados. Os objetos ProviderConfig especificam informações de configuração para o emissor de asserção SAML, que incluem nome do emissor, chave de assinatura do emissor e certificado de assinatura. Os objetos RequesterConfig contêm parâmetros de configuração que definem as características de asserções SAML e tokens SAML conforme eles são criados. Estes parâmetros de configuração incluem método de confirmação, assinatura de asserções SAML, tipo de chave de criptografia integrada e método de autenticação. Os objetos ConsumerConfig contêm parâmetros de configuração que definem como documentos XML de asserção de SAML são validados, incluindo informações chave de decriptografia, algoritmo de criptografia, valor do timer para clock skew e se assinatura digital é necessária para emissores.
  • com.ibm.wsspi.wssecurity.saml.config.ConsumerConfig
  • com.ibm.wsspi.wssecurity.saml.config.CredentialConfig
  • com.ibm.wsspi.wssecurity.saml.config.ProviderConfig
  • com.ibm.wsspi.wssecurity.saml.config.RequesterConfig
  • com.ibm.wsspi.wssecurity.saml.config.SamlConstants
  • com.ibm.wsspi.wssecurity.core.token.config.ConsumerConfiguration
  • com.ibm.wsspi.wssecurity.core.token.config.CredentialConfiguration
  • com.ibm.wsspi.wssecurity.core.token.config.ProviderConfiguration
  • com.ibm.wsspi.wssecurity.core.token.config.RequesterConfiguration
As seguintes classes SAML Callback e CallbackHandler especificam parâmetros de configuração que podem ser usados para definir as características de asserções SAML e controlam o comportamento do LoginModule SAML no ambiente de tempo de execução. Esses parâmetros são armazenados nos documentos de ligação do Web Services Security. A configuração do token SAML é modelada pela extensão CustomToken na configuração de política do Web Services Security.
  • com.ibm.websphere.wssecurity.callbackhandler.SAMLConsumeCallback
  • com.ibm.websphere.wssecurity.callbackhandler.SAMLConsumerCallbackHandler
  • com.ibm.websphere.wssecurity.callbackhandler.SAMLGenerateCallback
  • com.ibm.websphere.wssecurity.callbackhandler.SAMLGenerateCallbackHandler
O método getXML(), na interface de programação com.ibm.websphere.wssecurity.wssapi.token.SecurityToken, retorna objetos que implementam a interface XMLStructure. Um aprimoramento que é incluído pelo WebSphere Application Server suporta uma implementação SecurityToken customizada. Usando as duas SPIs a seguir, você pode efetuar uma implementação Axis2 Axiom OM ou uma implementação DOM. O token SAML estende a interface GenericSecurityToken que, por sua vez, estende a interface SecurityToken. GenericSecurityToken é uma nova interface incluída pelo WebSphere Application Server com SAML. O token SAML também implementa a interface OMStructure.
  • com.ibm.wsspi.wssecurity.wssapi.DOMStructure
  • com.ibm.wsspi.wssecurity.wssapi.OMStructure
A API WS-Trust Client inclui a classe WSSTrustClient e outras APIs e SPIs auxiliares. A API WSSTrustClient envia pedidos WS-Trust SOAP para um security token service (STS) externo especificado para que o STS possa emitir ou validar uma ou mais asserções SAML, ou outro tipo tipo de tokens de segurança. WSSTrustClient suporta as especificações WS-Trust Versão 1.3 e WS-Trusts Versão 1.2. A API WSSTrustClient retorna um token SAML quando os responsáveis pela chamada da API solicitam o tipo de token SAML. A API também usa a interface GenericSecurityToken quando o responsável pela chamada da API solicita um tipo de token não SAML. Leia sobre a API WS-Trust Client para obter informações adicionais e o código de amostra. Consulte a documentação da API para obter uma discussão detalhada das APIs e SPIs.
  • com.ibm.websphere.wssecurity.wssapi.trust.WSSTrustClient
  • com.ibm.websphere.wssecurity.wssapi.token.GenericSecurityToken
Use as seguintes SPIs para especificar as características de tokens e seu comportamento no ambiente de tempo de execução. Os objetos ProviderConfig contêm parâmetros de configuração que especificam o terminal STS, o conjunto de políticas do Web Services Security, os documentos de ligações usados para acessar o STS e se ligações gerais ou específicas do aplicativo são usadas. Os objetos ProviderConfig também especificam se o documento XML RequestSecurityTokenResponse (RSTR) será armazenado nos objetos GenericSecurityToken ou nos objetos SAMLToken. Os objetos RequesterConfig contêm parâmetros de configuração que são enviados nos pedidos WS-Trust para o STS especificado. A interface ConsumerConfig define atributos e dados para as mensagens de resposta de WS-Trust e para o elemento RequestSecurityTokenResponse. Estes dados são recuperados usando o método GenericSecurityToken getProperties(). O elemento XML RequestSecurityTokenResponse é armazenado como uma propriedade quando ProviderConfig setIncludeRSTRProperties() for chamada. Se um atributo específico requerido por um aplicativo não for definido pela interface ConsumerConfig, você poderá então recuperar e analisar o elemento RSTR.
  • com.ibm.wsspi.wssecurity.trust.config.ConsumerConfig
    • com.ibm.wsspi.wssecurity.trust.config.ConsumerConfig.RSTR
  • com.ibm.wsspi.wssecurity.trust.config.ProviderConfig
  • com.ibm.wsspi.wssecurity.trust.config.RequesterConfig
  • com.ibm.wsspi.wssecurity.core.token.config.WSSConstants
    • com.ibm.wsspi.wssecurity.core.token.config.WSSConstants.Namespace
    • com.ibm.wsspi.wssecurity.core.token.config.WSSConstants.TokenType
    • com.ibm.wsspi.wssecurity.core.token.config.WSSConstants.WST12
    • com.ibm.wsspi.wssecurity.core.token.config.WSSConstants.WST13
    • com.ibm.wsspi.wssecurity.core.token.config.WSSConstants.Algorithm
    • com.ibm.wsspi.wssecurity.core.token.config.WSSConstants.SAML

Para obter informações adicionais sobre como usar as APIs, incluindo cenários práticos que ilustram como e quando aplicar as APIs, leia sobre os cenários de uso de SAML.


Í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_overviewsamlapis
Nome do arquivo: cwbs_overviewsamlapis.html