Este documento descreve os problemas mais comuns encontrados durante a solução de problemas de SAML em dispositivos Cisco ASA e FTD.
A Cisco recomenda que você tenha conhecimento destes tópicos:
Os guias de melhores práticas são baseados nestas versões de hardware e software:
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
SAML (Security Assertion Markup Language) é uma estrutura baseada em XML para troca de dados de autenticação e autorização entre domínios de segurança. Ele cria um círculo de confiança entre o usuário, um provedor de serviços (SP) e um provedor de identidade (IdP), que permite que o usuário entre uma única vez para vários serviços. O SAML pode ser usado para autenticação de VPN de acesso remoto para conexões do Cisco Secure Client para headends de VPN ASA e FTD, onde o ASA ou FTD é a entidade SP no círculo de confiança.
A maioria dos problemas de SAML pode ser resolvida verificando a configuração no IdP e no ASA/FTD que está sendo usado. Nos casos em que a causa não é clara, as depurações fornecem mais clareza e os exemplos neste guia derivam do comando debug webvpn saml 255.
A finalidade deste documento é ser uma referência rápida para problemas de SAML conhecidos e possíveis soluções.
Isso geralmente significa que o comando saml idp [entityID] na configuração de firewall webvpn não corresponde à ID de entidade do IdP encontrada nos metadados do IdP como mostrado no próximo exemplo.
Exemplo de depuração:
Sep 05 23:54:02 [SAML] consume_assertion: The identifier of a provider is unknown to #LassoServer. To register a provider in a #LassoServer object, you must use the methods lasso_server_add_provider() or lasso_server_add_provider_from_buffer().
Do IDP:
<EntityDescriptor ID="_7e53f3f3-7c79-444a-b42d-d60ae13f0948" entityID="https://sts.example.net/69c69fff-03f6-4c9c-be73-9ed4f5f894c/">
De ASA/FTD:
saml idp https://sts.example.net/69c69fff-03f6-4c9c-be73-9ed4f5f894 >>>> The entity ID is missing characters at the end
Verifique o ID da entidade do arquivo de metadados do IdP e altere o comando saml idp [entity id] para corresponder exatamente a isso; incluindo quaisquer caracteres de barra invertida (/).
O firewall não pode validar a declaração fornecida pelo IdP, pois o relógio do firewall está fora da validade da declaração.
Exemplo de depuração:
[SAML] consume_assertion: assertion is expired or not valid
Exemplo:
[SAML] NotBefore:2022-06-21T09:52:10.759Z NotOnOrAfter:2022-06-21T10:57:10.759Z timeout: 0 >>>>> Validity of the saml assertion provided by the IDP
Jun 21 15:20:46 [SAML] consume_assertion: assertion is expired or not valid
firepower# show clock
15:26:49.240 UTC Tue Jun 21 2022 >>>> Current time on the firewall
No exemplo anterior, você pode ver que a asserção só é válida entre 09:52:10.759 UTC a 10:57:10.759 UTC, e a hora no firewall está fora da janela de validade.
Note: O tempo de validade visto na asserção está em UTC. Se o relógio no firewall estiver configurado em um fuso horário diferente, ele converte a hora em UTC antes da validação.
Configure a hora correta no firewall manualmente ou usando um servidor NTP e verifique se a hora atual do firewall está dentro da validade da asserção em UTC. Se o firewall estiver configurado em um fuso horário diferente do UTC, verifique se a hora foi convertida em UTC antes de verificar a validade da asserção.
Quando o firewall falha ao verificar a assinatura da asserção SAML recebida do IdP devido à configuração incorreta do certificado IdP no firewall webvpn com o comando trustpoint idp <trustpoint>.
Exemplo de depuração:
[Lasso] func=xmlSecOpenSSLEvpSignatureVerify:file=evp_signatures.c:line=372:obj=rsa-sha256:subj=unknown:error=18:data do not match:details=EVP_VerifyFinal: signature does not verify
Baixe e instale o certificado do IdP no firewall e atribua o novo ponto de confiança na configuração do firewall webvpn. O certificado de assinatura IdP geralmente pode ser encontrado nos metadados do IdP ou na resposta SAML decodificada.
O IdP está configurado com a URL de Resposta incorreta (URL do Serviço de Consumidor de Asserção).
Exemplo de depuração: Nenhuma depuração é mostrada após o envio da solicitação de autenticação inicial. O usuário não pode inserir credenciais, mas depois que a conexão falhar e nenhuma depuração for impressa.
Do IDP:

De metadados de FW ou SP:
<AssertionConsumerService index="0" isDefault="true" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://ac-vpn.local/+CSCOE+/saml/sp/acs?tgname=acvpn" />
Neste exemplo, você pode ver que o "URL do serviço do consumidor de asserção" no IdP não corresponde ao local nos metadados do SP.
Altere a URL do Serviço de Consumidor de Asserção no IdP conforme mostrado nos metadados do SP. Os metadados do SP podem ser obtidos com o comando show saml metadata <tunnel-group-name>.
Quando o IdP envia um destino incorreto na resposta SAML, tal como o grupo de túneis errado.
Exemplo de depuração:
[SAML] consume_assertion: assertion audience is invalid
Do rastreamento SAML:
<samlp:Response ID="_36585f72-f813-471b-b4fd-3663fd24ffe8"
Version="2.0"
IssueInstant="2022-06-21T11:36:26.664Z"
Destination="https://ac-vpn.local/+CSCOE+/saml/sp/acs?tgname=acvpn1"
Recipient="https://ac-vpn.local/+CSCOE+/saml/sp/acs?tgname=acvpn1"
<AudienceRestriction> <Audience>https://ac-vpn.local/saml/sp/metadata/acvpn</Audience> </AudienceRestriction>
Dos metadados do Firewall ou SP:
<AssertionConsumerService index="0" isDefault="true" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://ac-vpn.local/+CSCOE+/saml/sp/acs?tgname=acvpn" />
Corrija a configuração no IdP como Destino e Destinatário. A resposta SAML deve corresponder ao local conforme mostrado nos metadados do firewall/SP na saída show saml metadata <tunnel-group-name> .
Após qualquer modificação com a configuração SAML em webvpn, sugere-se remover e adicionar novamente o comando saml identity-provider <IDP-Entity-ID> no tunnel-group.
Remova e adicione novamente o comando saml identity-provider <IDP-Entity-ID> no tunnel-group.
Para configurar a autenticação SAML para usar o mesmo aplicativo IdP SSO para vários grupos de túneis, revise as etapas de configuração abaixo.
Opção 1 para o ASA 9.16 e anterior, FDM gerenciado FTD ou FMC/FTD 7.0 e anterior:
Opção 2 para o ASA 9.17.1 e posterior ou FTD/FMC 7.1 e posterior:
Isso pode ser visto no software Secure Client no dispositivo cliente devido a vários motivos, incluindo, mas não limitado a:
Exemplo de depuração:
[SAML] relay-state hash mismatch.
Embora a maioria das soluções de problemas de SAML possa ser executada com a saída da depuração de SAML do webvpn, há momentos em que depurações adicionais podem ser úteis para identificar a causa de um problema.
firepower# debug webvpn saml 255 firepower# debug webvpn 255 firepower# debug webvpn session 255 firepower# debug webvpn request 255
| Revisão | Data de publicação | Comentários |
|---|---|---|
2.0 |
12-Oct-2026
|
Ortografia, gramática, espaçamento atualizados, linhas horizontais inseridas em seções separadas, alertas fixos do CCW. |
1.0 |
01-Aug-2025
|
Versão inicial |