简介
本文档介绍使用Azure身份提供程序对由FMC管理的思科FTD上的多个连接配置文件进行SAML身份验证。
先决条件
要求
建议掌握下列主题的相关知识:
- 下一代防火墙(NGFW)上由Firepower管理中心(FMC)管理的安全客户端配置
- SAML和metatada.xml值
使用的组件
本文档中的信息基于以下软件和硬件版本:
- Firepower威胁防御(FTD)版本7.4.0
- FMC版本7.4.0
- 带SAML 2.0的Azure Microsoft Entra ID
- 思科安全客户端5.1.7.80
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
此配置允许FTD使用两个不同的SAML应用程序在Azure idp上对安全客户端用户进行身份验证,并在FMC上配置单个SAML对象。

在Microsoft Azure环境中,多个应用程序可以共享相同的实体ID。每个应用程序(通常映射到不同的隧道组)都需要一个唯一的证书,要求在单个SAML IdP对象下的FTD端的IdP配置中配置多个证书。但是,思科FTD不支持在一个SAML IdP对象下配置多个证书,如思科Bug ID CSCvi29084中所述。
为了克服此限制,思科引入了IdP证书覆盖功能,该功能可从FTD 7.1.0版和ASA 9.17.1版中获取。此增强功能提供了永久性的问题解决方案,并补充了错误报告中介绍的现有解决方法。
配置
本节概述在Firepower管理中心(FMC)管理的Cisco Firepower威胁防御(FTD)上,将Azure配置为多个连接配置文件的身份提供程序(IdP)的SAML身份验证配置过程。 利用IdP证书覆盖功能有效地进行设置。
配置概述:
在思科FTD上配置两个连接配置文件:
在此配置示例中,VPN网关URL(思科安全客户端FQDN)设置为nigarapa2.cisco.com
配置
Azure IdP上的配置
要为Cisco安全客户端有效配置SAML企业应用,请完成以下步骤,确保为每个隧道组正确设置所有参数:
访问SAML企业应用:
导航到SAML提供商的管理控制台,其中列出了您的企业应用。
选择适当的SAML应用:
识别并选择与要配置的思科安全客户端隧道组对应的SAML应用。
配置标识符(实体ID):
设置每个应用程序的标识符(实体ID)。必须是基本URL,即您的思科安全客户端完全限定域名(FQDN)。
设置回复URL(断言消费者服务URL):
使用正确的基本URL配置回复URL(断言消费者服务URL)。确保它与思科安全客户端FQDN一致。
将连接配置文件或隧道组名称附加到基本URL以确保特异性。
验证配置:
仔细检查是否所有URL和参数都已正确输入且与相应的隧道组相对应。
保存更改,如有可能,执行测试身份验证以确保配置按预期运行。
有关更详细的指导,请参阅思科文档中的“从Microsoft应用库添加Cisco安全客户端”:使用Microsoft Azure MFA通过SAML配置ASA安全客户端VPN
FTD-SAML-1



FTD-SAML-2



现在请确保您具有配置SAML身份验证的必要信息和文件,并将Microsoft Entra用作您的身份提供程序:
找到Microsoft Entra标识符:
访问Microsoft Entra门户中的两个SAML企业应用的设置。
注意Microsoft Entra标识符,它在两个应用中保持一致,对SAML配置至关重要。
下载Base64 IdP证书:
导航到每个已配置的SAML企业应用。
下载各自的Base64编码IdP证书。这些证书对于在身份提供者和Cisco VPN设置之间建立信任至关重要。
注意:FTD连接配置文件所需的所有这些SAML配置也可从IdP为各个应用提供的metadata.xml文件获得。
注意:要使用自定义IdP证书,您需要将自定义生成的IdP证书上传到IdP和FMC。对于Azure IdP,请确保证书采用PKCS#12格式。在FMC上,仅从IdP上传身份证书,而不上传PKCS#12文件。有关详细说明,请参阅思科文档中的“在Azure和FDM上上传PKCS#12文件”部分:在FDM上使用SAML身份验证配置多个RAVPN配置文件
通过FMC在FTD上进行配置
注册IdP证书:
导航到FMC中的证书管理部分,并为两个SAML应用注册下载的Base64编码的IdP证书。这些证书对于建立信任和启用SAML身份验证至关重要。
有关详细指导,请参阅以下网址上提供的思科文档中“通过FMC在FTD上进行配置”下的前两个步骤:在通过FMC管理的FTD上配置具有SAML身份验证的安全客户端。

注意:图像已经过编辑,可以同时显示两个证书,以便更好地查看。无法在FMC上同时打开两个证书。
通过FMC在思科FTD上配置SAML服务器设置
要使用Firepower管理中心(FMC)在思科Firepower威胁防御(FTD)上配置SAML服务器设置,请执行以下步骤:
- 导航至Single Sign-on Server Configuration:
- 导航到对象>对象管理> AAA服务器>单点登录服务器。
- 单击Add Single Sign-on Server开始配置新服务器。
- 配置SAML服务器设置:
- 使用从SAML企业应用程序或从身份提供程序(IdP)下载的metadata.xml文件中收集的参数,在New Single Sign-on Server表单中填写必要的SAML值。
- 要配置的关键参数包括:
- SAML提供程序实体ID:metadata.xml中的entityID
- SSO URL:来自metadata.xml的SingleSignOnService。
- 注销URL:来自metadata.xml的SingleLogoutService。
- 基本URL:FTD SSL ID证书的FQDN。
- 身份提供程序证书:IdP签名证书。
- 在Identity Provider Certificate部分下,附加一个已注册的IdP证书
- 在本使用案例中,我们使用来自FTD-SAML-1应用的IdP证书。
- 服务提供商证书:FTD签名证书。

注意:在当前配置中,只能从连接配置文件设置中的SAML对象覆盖身份提供程序证书。遗憾的是,“登录时请求IDp重新身份验证”(Request IdP re-authentication on login)和“仅在内部网络中启用IDp可访问”(Enable IdP only accessible on internal network)等功能无法为每个连接配置文件单独启用或禁用。
通过FMC在思科FTD上配置连接配置文件
要完成SAML身份验证设置,您需要使用适当的参数配置连接配置文件,并使用先前配置的SAML服务器将AAA身份验证设置为SAML。
有关更详细的指导,请参阅思科文档中“通过FMC配置FTD”下的第五步:在通过FMC管理的FTD上配置具有SAML身份验证的安全客户端。

提取第一个连接配置文件的AAA配置
以下是第一个连接配置文件的AAA配置设置的概述:

为思科FTD上的第二个连接配置文件配置IdP证书覆盖
要确保将正确的身份提供程序(IdP)证书用于第二个连接配置文件,请完成以下步骤以启用IdP证书覆盖:
在连接配置文件设置中,找到并启用选项“Override Identity Provider Certificate”,以允许使用与SAML服务器配置的IdP证书不同的证书。
从已注册IdP证书列表中,选择专门为FTD-SAML-2应用注册的证书。此选项可确保当为此连接配置文件发出身份验证请求时,使用正确的IdP证书。

配置部署
导航Deploy > Deployment
至并选择适当的FTD以应用SAML身份验证VPN更改。
验证
FTD命令行上的配置
firepower# sh run webvpn
webvpn
enable outside
http-headers
hsts-server
enable
max-age 31536000
include-sub-domains
no preload
hsts-client
enable
x-content-type-options
x-xss-protection
content-security-policy
Secure Client image disk0:/csm/Secure Client-win-4.10.08025-webdeploy.pkg 1 regex "Windows"
Secure Client enable
saml idp https://sts.windows.net/477a586b-61c2-4c8e-9a41-1634016aa513/
url sign-in https://login.microsoftonline.com/477a586b-61c2-4c8e-9a41-1634016aa513/saml2
url sign-out https://login.microsoftonline.com/477a586b-61c2-4c8e-9a41-1634016aa513/saml2
base-url https://nigarapa2.cisco.com
trustpoint idp FTD-SAML-1-idp-cert
trustpoint sp nigarapa2
no signature
force re-authentication
tunnel-group-list enable
cache
disable
error-recovery disable
firepower#
firepower# sh run tunnel-group FTD-SAML-1
tunnel-group FTD-SAML-1 type remote-access
tunnel-group FTD-SAML-1 general-attributes
address-pool secure-client-pool
default-group-policy FTD-SAML-1-gp
tunnel-group FTD-SAML-1 webvpn-attributes
authentication saml
group-alias FTD-SAML-1 enable
saml identity-provider https://sts.windows.net/477a586b-61c2-4c8e-9a41-1634016aa513/
firepower#
firepower# sh run tunnel-group FTD-SAML-2
tunnel-group FTD-SAML-2 type remote-access
tunnel-group FTD-SAML-2 general-attributes
address-pool secure-client-pool
default-group-policy FTD-SAML-2-gp
tunnel-group FTD-SAML-2 webvpn-attributes
authentication saml
group-alias FTD-SAML-2 enable
saml identity-provider https://sts.windows.net/477a586b-61c2-4c8e-9a41-1634016aa513/
saml idp-trustpoint FTD-SAML-2-idp-cert
firepower#
从Azure entra标识符登录日志
访问enterprise application下的Sign-in Logs部分。查找与特定连接配置文件(例如FTD-SAML-1和FTD-SAML-2)相关的身份验证请求。验证用户是否正在通过与每个连接配置文件关联的SAML应用程序成功进行身份验证。
Azure IdP上的登录日志
故障排除
- 您可以从安全客户端用户PC使用DART进行故障排除。
- 要对SAML身份验证问题进行故障排除,请使用以下调试:
firepower# debug webvpn saml 255
- 按照上述说明验证安全客户端配置;此命令可用于检查证书。
firepower# show crypto ca certificate