在第 1 部分中,我详细解释了 ClearPass 社交登录使用 OAUTH 的工作原理。在本部分中,我将解释如何基于 Azure AD 进行配置。简而言之,您需要配置
- Azure:注册应用程序(获取客户端 ID/密钥)
- ClearPass:配置一个带有社交登录和服务功能的网页登录页面以处理访客认证
- 控制器:为设备分配初始角色,使用强制门户页面指向 ClearPass,并在成功认证后分配角色
我们先从 Azure 配置开始。
Azure 配置
步骤 1:登录 Azure 门户并搜索应用注册。注册一个应用并提供重定向 URI 以指向 ClearPass 访客页面(将在 ClearPass 上创建)。

步骤 2:选择证书和密钥,然后创建一个新的客户端密钥。根据需要指定有效期。


步骤 3:复制提供的密钥,并以安全的方式保存(下面显示的密钥已被删除)

步骤 4:从概览选项卡中复制此应用的客户端 ID。

步骤 5:现在唯一剩下的部分是为应用程序提供所需的权限。导航到 API 权限,选择 Microsoft Graph 并添加目录:读取所有。


步骤 6:授予应用读取目录数据的权限(授予管理员同意)

以上是 Azure 端所需的配置。现在让我们配置 ClearPass 端。
ClearPass 配置
步骤 1:创建访客网页登录页面,添加社交登录选项并选择 Microsoft Azure AD。确保指定回传地址指向安装在控制器上的证书通用名称。


步骤 2:根据在设置 Azure 应用时获得的值(Azure 配置部分的步骤 3 和步骤 4),指定客户端 ID 和客户端密钥
步骤 3:如果在您的工作流程中需要,启用组成员资格获取

步骤 4:使用访客模板配置服务(云身份/社交媒体认证)

在下面的屏幕中,暂时保留默认值。在下一步中,我们将其更改为 azure。

步骤 5:将创建的策略中的社交登录提供商更改为 azure。移除未使用的其他条件。

这完成了 ClearPass 端的配置。只需确保 ClearPass 通过 https 访问互联网以连接到 Azure 图形 API。
现在让我们检查控制器配置。
控制器配置
控制器需要配置一个初始角色,该角色链接到一个强制门户配置文件,该文件将流量重定向到 ClearPass。此角色所需的最低策略如下所示。

以下是此角色的示例配置。
netdestination microsoft_whitelist
name *.microsoft.com
name *.microsoftonline.com
name login.microsoftonline.com
name *.aadcdn.microsoftonline-p.com
name login.live.com
name mbs.microsoft.com
name go.microsoft.com
name login.microsoftonline-p.com
name secure.aadcdn.microsoftonline-p.com
name urs.microsoft.com
name auth.gfx.ms
name dynamicscrmemea.accesscontrol.windows.net
name sc.imp.live.com
name *.windows.net
name *.passport.net
name *.crm4.dynamics.com
name home.dynamics.com
name cloudredirectoreur.cloudapp.net
name cloudredirectoreursec.cloudapp.net
name *.azureedge.net
name www.crmdynint.com
name graph.windows.net
name aadcdn.msauth.net
!
netdestination clearpass_cp
name
host
!
netdestination allowed_dns_servers
host 8.8.8.8
!
ip access-list session restricted_dhcp
user any udp 68 deny
any any svc-dhcp permit
!
ip access-list session restricted_dns
any alias allowed_dns_servers svc-dns permit
!
ip access-list session custom-logon-control
any network 169.254.0.0 255.255.0.0 any deny
any network 240.0.0.0 240.0.0.0 any deny
!
aaa authentication captive-portal "PGUEST_cp_prof"
server-group ""
redirect-pause 3
no logout-popup-window
login-page ""
no enable-welcome-page
white-list "clearpass_cp"
white-list "microsoft_whitelist"
redirect-url "https://www.arubanetworks.com"
!
user-role p-guest-logon
captive-portal "PGUEST_cp_prof"
access-list session global-sacl
access-list session restricted_dhcp
access-list session restricted_dns
access-list session apprf-p-guest-logon-sacl
access-list session custom-logon-control
access-list session captiveportal
!
确保将此初始角色关联到与 VAP 关联的 AAA 配置文件。这是控制器的简化配置。
试了一下,一直报用户名未找到,和sso失败的报错