Assinando Tokens SAML no Nível da Mensagem

Proteja tokens SAML no nível da mensagem ativando a assinatura de asserção.

Antes de Iniciar

Antes de configurar assinatura para tokens SAML, é necessário configurar ligações e conjuntos de políticas SAML para criar tokens SAML como tokens de suporte à autenticação com proteção de integridade em nível de mensagem. Para obter informações adicionais, leia sobre como proteger mensagens utilizando SAML. Além disso, as ligações do SAML anexadas devem ser ligações específicas de aplicativo, e não ligações gerais. O algoritmo de conversão utilizado para assinar asserções do SAML é diferente de outras partes assinadas, embora só um algoritmo de conversão seja utilizado com ligações gerais.

Sobre Esta Tarefa

Esta tarefa aborda especificamente as etapas de como assinar digitalmente um token do SAML. Essa tarefa não aborda nenhum dos requisitos padrão do OASIS do Perfil do Token do SAML para sender-vouches do SAML ou tokens de acesso do SAML com referência às partes da mensagem que devem ser assinadas. Para assinar asserções do SAML, uma mensage-m SOAP deve incluir um elemento <wsse:SecurityTokenReference> no bloco de cabeçalho <wsse:Security>. O SecurityTokenReference (STR) é referido pela assinatura de mensagem que usa um elemento <ds:Reference>. A referência do token de segurança deve incluir um elemento <wsse:KeyIdentifier> com o valor ValueType, http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLID, ou http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID, especificando o identificador de asserção referido. O elemento <ds:Reference> deve incluir a URI do algoritmo de conversão do STR, http://docs.oasis-open.org/wss/2004/01/oasis-200401-wsssoap-message-security-1.0#STR-Transform. O uso da conversão do STR assegura que a própria asserção do SAML seja assinada, não apenas o elemento <wsse:SecurityTokenReference>.

Sigas estas etapas de configuração para ativar a assinatura de tokens SAML no nível da mensagem.

Evitar Problemas Evitar Problemas: A única maneira de incluir atributos customizados em um SAMLToken após a criação inicial, é usando um manipulador de retorno de chamada do atributo SAML. Embora seja possível incluir atributos no objeto SAMLToken usando o método SAMLToken.addAttribute, ele removerá a assinatura digital do token, se houver. Ele também não pode ser usado com tokens SAML criptografados ou com atributos criptografados.gotcha

Procedimento

  1. Configure as partes da mensagem.
    1. No console administrativo, edite o conjunto de políticas do SAML, em seguida, clique em Segurança WS > Política Principal > Proteção de Parte da Mensagem de Solicitação.
    2. Em Proteção de Integridade, clique em Incluir.
    3. Insira um nome de parte para Nome da Parte a Ser Assinada; por exemplo, saml_part.
    4. Em Elementos na Parte, clique em Incluir.
    5. Selecione Expressão XPath.
    6. Inclua duas expressões XPath.
      /*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' 
      and local-name()='Envelope']/*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' 
      and local-name()='Header']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='Security']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='SecurityTokenReference']
      /*[namespace-uri()='http://www.w3.org/2003/05/soap-envelope' 
      and local-name()='Envelope']/*[namespace-uri()='http://www.w3.org/2003/05/soap-envelope' 
      and local-name()='Header']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='Security']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='SecurityTokenReference']
    7. Clique em Aplicar e em Salvar.
    8. Se um aplicativo nunca tiver sido iniciado usando esta política, nenhuma ação adicional será necessária. Caso contrário, reinicie o servidor de aplicativos ou siga as instruções no artigo Atualizando configurações de conjunto de políticas usando o script wsadmin, para o servidor de aplicativos recarregar o conjunto de políticas.
  2. Modifique as ligações de cliente para assinar o token do SAML.
    1. No painel Conjunto de Políticas e Ligações do Cliente de Serviço, clique em Segurança WS > Autenticação e Proteção.
    2. Modifique as Ligações de Parte da Mensagem Assinada da saída configurada atualmente para incluir a nova parte do SAML criada.

      Em Proteção de Criptografia e de Assinatura da Mensagem de Solicitação, selecione a referência da parte cujo status é configurado como Configurado. Esta referência de peça muito provavelmente será request:app_signparts.

      1. Na lista Disponível em Referência da Parte da Mensagem, selecione o nome da parte a ser assinada, conforme criado na etapa 1; por exemplo, saml_part.
      2. Clique em Incluir e, em seguida, clique em Aplicar.
      3. Na lista Designado em Referência da Parte da Mensagem, realce o nome da parte incluída; por exemplo, saml_part.
      4. Clique em Editar.
      5. Para a configuração Algoritmos de Conversão, clique em Novo.
      6. Selecione http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform.
      7. Clique em OK, clique em OK e, em seguida, clique em OK mais uma vez.
    3. Atualize o token GENERATO SAML com a propriedade customizada para indicar uma assinatura digital com uma Referência de token de segurança.

      Em Tokens de Autenticação, selecione e edite o token SAML que deseja assinar.

      1. Em Propriedade Customizada, clique em Novo.
      2. Insira com.ibm.ws.wssecurity.createSTR como o nome da propriedade customizada.
      3. Insira true como o valor da propriedade customizada.
      4. Clique em Aplicar e, em seguida, clique em Salvar.
    4. Inicie novamente o aplicativo.
  3. Modifique as ligações de provedores para aceitar um token do SAML assinado.
    1. No painel Conjuntos de Políticas e Ligações do Provedor de Serviços, clique em Segurança WS > Autenticação e Proteção.
    2. Modifique as Ligações de Parte da Mensagem Assinada de entrada configurada atualmente para incluir a nova parte do SAML criada.

      Em Proteção de Criptografia e de Assinatura da Mensagem de Solicitação, selecione a referência da parte cujo status é configurado como Configurado. Esta referência de peça muito provavelmente será request:app_signparts.

      1. Na lista Disponível em Referência da Parte da Mensagem, selecione o nome da parte a ser assinada, conforme criado na etapa 1; por exemplo, saml_part.
      2. Clique em Incluir e, em seguida, clique em Aplicar.
      3. Na lista Designado em Referência da Parte da Mensagem, realce o nome da parte incluída; por exemplo, saml_part.
      4. Clique em Editar.
      5. Para a configuração Algoritmos de Conversão, clique em Novo.
      6. Selecione http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform.
      7. Clique em OK, clique em OK e, em seguida, clique em OK mais uma vez.
      8. Clique em Salvar.
    3. Inicie novamente o aplicativo.

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



Í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=twbs_signsamltoken
Nome do arquivo: twbs_signsamltoken.html