我已经在我的 Cisco ASA 上成功创建了 AnyConnect VPN 配置,并且它通过 RSA secureID 进行身份验证以使用令牌代码。但是,我现在想做的是对用户名进行 AD 查找,并根据他们所在的组,为他们分配正确的组策略。我知道使用 ACS 是不可能的。我不确定 RSA 是否具有此功能。也许 ASA 可以使用身份防火墙做到这一点?
Cisco ASA AnyConnect - 使用 RSA 令牌进行身份验证,根据 AD 组分配策略
我的理解是,当使用 SDI 协议进行 RSA 集成时,您不能传递组/类信息。但是,如果您使用 RADIUS 访问 RSA 服务器,则可以将 RSA 服务器配置为返回格式为“OU=group-policy-name;”的 RADIUS 类属性。然后用于匹配 ASA 配置中的组策略名称。我已经和另一个客户这样做了。例如:
aaa-server RSA protocol radius
aaa-server RSA (inside) host 10.1.1.50
key *****
authentication-port 1812
accounting-port 1813
然后,您将有一个失败关闭的组策略(我通常称其为“NOACCESS”),它将“vpn-simultaneous-logins”设置为 0,从而断开连接,如下所示:
group-policy NOACCESS internal
group-policy NOACCESS attributes
vpn-simultaneous-logins 0
然后,您将拥有一个或多个组策略来描述您的 VPN 用户,并使用非零值覆盖“vpn-simultaneous-logins”值(我通常将其设置回默认值 3),如下所示:
group-policy Users internal
group-policy Users attributes
vpn-simultaneous-logins 3
<other VPN policy settings go here>
最后,您的隧道组将设置为使用 RSA 服务器(通过 RADIUS)作为身份验证服务器,然后默认组策略设置为“NOACCESS”组以强制该组失败关闭,如果 RADIUS 类值是没有回来:
tunnel-group RA-VPN type remote-access
tunnel-group RA-VPN general-attributes
authentication-server-group RSA
default-group-policy NOACCESS
此解决方案的重要说明是:
- RADIUS返回的Class属性必须是(不带引号,注意很重要的分号)“OU=group-policy-name;”
- Class 属性中返回的“group-policy-name”必须与 ASA 中配置的组策略名称完全匹配,包括大小写匹配。
行为是如果没有匹配的 RADIUS 类属性返回,用户的会话将继承默认的组策略值“NOACCESS”并被分配“vpn-simultaneous-logins 0”属性。如果返回与 ASA 中的组策略名称匹配的类属性,则会为用户会话分配该组策略,然后覆盖继承的默认“vpn-simultaneous-logins”值并允许他们继续其登录。
多年来,我一直定期使用此 RADIUS 配置,与我合作的一位客户发现 RSA 要求,即使用 RADIUS 传递 Class 属性以进行组分配。不幸的是,我不知道进行组映射或返回属性的 RSA 设置,但此线程和此线程可能在那里有所帮助。
我能够在 ACS 中解决这个问题。缺少的部分是我需要创建一个身份存储序列。这允许我对一个地方 (RSA) 进行身份验证,并在另一个地方 (AD) 进行额外的属性查找。
谢谢你的帮助。你们让我想到了不同的问题,最终解决了它!
有关此主题的更多信息,请访问 Cisco 的网站管理用户和身份存储。