20-可信访问控制配置
本章节下载: 20-可信访问控制配置 (289.46 KB)
IAM(Identity and Access Management,身份识别与访问管理)可信访问控制功能是指设备作为可信代理与IAM控制器进行联动,对访问指定应用或API的流量进行身份认证和鉴权,以实现对用户身份和访问权限的集中控制,防止非法用户访问。
如图1-1所示,IAM可信访问控制器和可信代理作为IAM可信访问控制功能的必要组成部分,共同对外提供服务。
图1-1 IAM可信访问控制基本组网图
IAM可信访问控制器是负责对用户进行身份认证和对用户访问权限进行鉴别的第三方设备。IAM控制器有自己的身份和权限管理系统,管理员可以在IAM控制器中配置用户的身份信息以及对资源的访问权限。
可信代理用来代替客户端向IAM控制器进行身份认证和权限鉴别。当客户端访问内网应用或API时,所有匹配可信代理的流量,都由可信代理统一进行认证和鉴权,认证和鉴权通过后,由可信代理对访问请求进行转发。
可信代理通过引用SSL策略、负载均衡策略、防护策略以及DPI应用Profile等为内网应用或API提供数据加密、负载分担、安全防护等能力。
可信代理根据代理的服务类型不同,分为以下两种:
· 可信接入代理:对访问应用的流量进行代理。
· 可信API代理:对访问API的流量进行代理。
可信接入代理和可信API代理可以分别部署在两台设备,也可以同时部署在一台设备上。
IAM可信访问控制工作流程如图1-2所示:
图1-2 IAM可信访问控制工作流程图
IAM可信访问控制工作流程简述如下,步骤(1)~(11)为可信接入代理工作流程,步骤(12)~(18)为可信API代理工作流程。
(1) Host请求应用服务
(2) 可信代理设备将匹配代理IP地址和端口号的流量,重定向至IAM控制器提供的认证页面进行认证
(3) Host使用用户名和密码在IAM控制器的认证页面进行登录认证
(4) 认证成功后,IAM控制器将访问请求重定向至可信接入代理页面(携带用户Token),页面中包含IAM控制器授权当前用户访问的应用列表
(5) Host携带用户Token请求应用服务
(6) 可信接入代理设备根据用户Token和应用URL查询鉴权成功的本地记录。若查询到本地记录,则认为应用鉴权成功,进入步骤(9);否则,进入步骤(7)
(7) 可信接入代理设备携带用户Token和应用URL,向IAM控制器发送鉴权请求
(8) 应用鉴权成功后,IAM控制器向可信接入代理设备返回鉴权结果
(9) 若应用鉴权结果为允许访问,可信接入代理设备会将鉴权成功的用户和应用 URL记录在设备本地并代替Host请求应用服务
(10) App server向可信接入代理设备返回访问结果
(11) 可信接入代理设备向Host返回访问结果
(12) Host携带用户Token和 请求API服务,对于匹配可信API代理IP地址和端口的流量,进行可信API代理
(13) 可信API代理设备根据用户Token和API URL查询鉴权成功的本地记录。若查询到本地记录,则认为API鉴权成功,进入步骤(16);否则,进入步骤(14)
(14) 可信API代理设备携带用户Token、应用Token和API ID,向IAM发送鉴权请求
(15) API鉴权成功后,IAM控制器向可信API代理设备返回鉴权结果
(16) 若API鉴权结果为允许访问,可信API代理设备会将鉴权成功的用户和API URL记录在设备本地并代替Host请求API服务
(17) API server向可信API代理设备返回访问结果
(18) 可信API代理设备向Host返回访问结果
在鉴权成功的本地记录老化之前,代理设备可直接通过查询本地记录进行鉴权,无需到IAM控制器进行鉴权。若在记录老化之前,发生用户下线或用户权限变更等事件,IAM控制器会及时通知代理设备,以便代理设备变更本地记录。
IAM可信访问控制器的配置任务如下:
(1) 创建可信访问控制器
(2) 配置本地服务URL
(3) 配置本地服务URL
(4) 开启可信访问控制器
(1) 进入系统视图。
system-view
(2) 创建IAM可信访问控制器,并进入IAM可信访问控制器。
trusted-access controller controller-name type iam
创建IAM可信访问控制器时必须为其指定类型;而在进入已创建的IAM可信访问控制器视图时可以不指定类型,若要指定类型,则必须与创建时的类型一致。
(3) (可选)配置可信访问控制器的描述信息。
description text
缺省情况下,未配置可信访问控制器的描述信息。
本地服务URL用来与可信访问控制器进行联动,可信访问控制器可以通过本地服务URL向设备通知用户下线、用户权限变更等事件。
同一台设备上,不允许为不同的可信访问控制器配置地址和端口号完全相同的本地服务URL。
(1) 进入系统视图。
system-view
(2) 进入IAM可信访问控制器视图。
trusted-access controller controller-name
(3) 配置与可信访问控制器联动的本地服务URL。
local-service url service-url
缺省情况下,未配置与可信访问控制器联动的本地服务URL。
(4) (可选)指定设备与可信访问控制器之间建立SSL连接时所使用的SSL服务器端策略。
ssl-server-policy policy-name
缺省情况下,未指定设备与可信访问控制器之间建立SSL连接时所使用的SSL服务器端策略。
若配置本地服务URL的协议类型为HTTPS,则必需配置本命令。
对端服务URL用来指定设备与可信访问控制器联动的URL,设备可以通过对端服务URL向可信访问控制器进行注册及用户权限鉴别。
(1) 进入系统视图。
system-view
(2) 进入IAM可信访问控制器视图。
trusted-access controller controller-name
(3) 配置提供可信访问控制服务的对端服务URL。
peer-service url service-url
缺省情况下,未配置提供可信访问控制服务的对端服务URL。
(4) (可选)指定设备与可信访问控制器之间建立SSL连接时所使用的SSL客户端策略。
ssl-client-policy policy-name
缺省情况下,未指定设备与可信访问控制器之间建立SSL连接时所使用的SSL客户端策略。
若配置对端服务URL的协议类型为HTTPS,则必需配置本命令。
(1) 进入系统视图。
system-view
(2) 进入IAM可信访问控制器视图。
trusted-access controller controller-name
(3) 开启可信访问控制器。
service enable
缺省情况下,可信访问控制器处于关闭状态。
通过配置可信代理,可以对匹配可信代理的流量进行解析,引导其通过IAM可信访问控制器进行身份认证。对于认证通过的用户,可信代理根据用户Token信息向IAM可信访问控制器鉴权,确定用户对当前请求的资源是否有访问权限,从而实现基于用户认证的访问控制。
可信代理的配置任务如下:
(1) 创建可信代理
请至少选择其中一项进行配置:
¡ 创建可信接入代理
(2) 配置可信代理的IP地址和端口号
(3) 引用IAM可信访问控制器
(4) (可选)配置应用鉴权的鉴权URL层级
(5) (可选)配置连接参数
(6) (可选)引用策略或模板
可信代理通过引用以下策略或模板,为内网应用或API提供数据加密、负载分担、安全防护等能力。
¡ 引用参数模板
¡ 引用SSL策略
¡ 引用负载均衡策略
(7) 开启可信代理
(1) 进入系统视图。
system-view
(2) 创建可信接入代理,并进入可信接入代理视图。
trusted-app-proxy proxy-name type http
创建可信接入代理时必须为其指定类型;而在进入已创建的可信接入代理视图时可以不指定类型,若要指定类型,则必须与创建时的类型一致。
(1) 进入系统视图。
system-view
(2) 创建可信API代理,并进入可信API代理视图。
trusted-api-proxy proxy-name type http
创建可信API代理时必须为其指定类型;而在进入已创建的可信API代理视图时可以不指定类型,若要指定类型,则必须与创建时的类型一致。
本功能用来配置对外提供可信接入代理或可信API代理业务的IP地址和端口号。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 配置可信代理的IP地址。
(IPv4网络)
proxy ip address ipv4-address
(IPv6网络)
proxy ipv6 address ipv6-address
缺省情况下,未配置可信代理的IP地址。
(4) 配置可信代理的端口号。
port port-number
缺省情况下,可信代理的端口号为80。
引用IAM可信访问控制器后,代理设备可以利用该控制器,对访问可信接入代理和可信API代理的流量进行访问控制。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 配置可信代理引用的可信访问控制器。
trusted-access-controller iam controller-name
缺省情况下,未配置可信代理引用的可信访问控制器。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 配置可信代理允许的最大连接数。
connection-limit max max-number
缺省情况下,可信代理允许的最大连接数为0,即不受限制。
(4) 配置可信代理允许的最大连接速率。
rate-limit connection connection-rate
缺省情况下,可信代理允许的最大连接速率为0,即不受限制。
在应用鉴权过程中,可信接入代理会提取用户请求URL中的一部分,作为鉴权URL向IAM控制器进行鉴权。
通过配置本功能,可指定鉴权URL的提取范围,即“域名+指定层级的资源路径”。例如,用户访问的应用URL为:www.test.com/aaa/bbb/ccc/ddd/default=eee,若配置鉴权URL层级为0,则可信接入代理提取的鉴权URL为www.test.com;若配置鉴权URL为3,则可信接入代理提取的鉴权URL为www.test.com/aaa/bbb/ccc。
通常情况下,每个应用有单独的域名,管理员只需要采用缺省配置,将鉴权URL指定为域名部分,就能够进行应用权限控制。但当多个应用采用相同的域名时,若将鉴权URL指定为域名部分,则无法对不同的应用分别进行鉴权。此时,管理员可以通过本命令配置URL资源路径的层级,设备将按照指定的层级提取鉴权URL,从而达到对相同域名的不同应用分别进行权限控制的目的。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图。
trusted-app-proxy proxy-name
(3) 配置应用鉴权的鉴权URL层级。
app-url-level level
缺省情况下,应用鉴权的鉴权URL层级为0。
参数模板用来对可信代理上的流量进行深入的解析、处理和优化。可信代理引用了参数模板后,就要根据该参数模板的配置对鉴权通过的流量进行相应的处理。
若配置了可信代理引用客户端侧TCP类型的参数模板,则系统对客户端与设备之间建立的TCP连接进行优化和处理;若配置了可信代理引用服务器侧TCP类型的参数模板,则系统对设备与服务器之间建立的TCP连接进行优化和处理。
有关参数模板的详细介绍,请参见“负载均衡配置指导”中的“服务器负载均衡”。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 配置可信代理引用的TCP类型的参数模板。
parameter tcp profile-name [ client-side | server-side ]
缺省情况下,未配置可信代理引用的参数模板。
通过引用SSL客户端策略,可以对设备作为SSL客户端时,设备与SSL服务器之间传输的流量进行加密传输。
通过引用SSL服务器端策略,可以对设备作为SSL服务器时,设备与SSL客户端之间传输的流量进行加密传输。
有关SSL策略的详细介绍,请参见“安全配置指导”中的“SSL”。
如需修改已被可信代理引用的SSL客户端/服务器端策略,在策略修改完成后,需在可信代理视图下,先通过执行undo service enable命令关闭可信代理,再通过执行service enable命令开启可信代理,新的策略才能生效。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 指定可信代理引用的SSL客户端策略。
ssl-client-policy policy-name
缺省情况下,可信代理未引用任何SSL客户端策略。
(4) 指定可信代理引用的SSL服务器端策略。
ssl-server-policy policy-name [ sni server-name ]
缺省情况下,可信代理未引用任何SSL服务器端策略。
引用负载均衡策略后,可信代理能够根据策略中的匹配规则,使鉴权通过的报文根据不同的报文内容进行不同的负载均衡处理。
有关负载均衡策略的详细介绍,请参见“负载均衡配置指导”中的“服务器负载均衡”。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 指定可信代理引用的负载均衡策略。
lb-policy policy-name
缺省情况下,未指定可信代理引用的负载均衡策略。
引用负载均衡连接数限制策略后,匹配可信代理的流量将会受到连接数限制策略的限制。
有关负载均衡连接数限制策略的详细介绍,请参见“负载均衡配置指导”中的“服务器负载均衡”。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 指定可信代理引用的负载均衡连接数限制策略。
lb-limit-policy policy-name
缺省情况下,未指定可信代理引用的负载均衡连接数限制策略。
通过引用HTTP防护策略,可以对防护策略中指定的URL进行防护,从而保护应用服务器或API服务器的安全,防止攻击者在短时间内发送大量的虚假请求,致使服务器疲于应付无用信息,无法处理正常业务。
有关防护策略的详细介绍,请参见“负载均衡配置指导”中的“服务器负载均衡”。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 指定可信代理引用的HTTP防护策略。
protection-policy http policy-name
缺省情况下,未指定可信代理引用的HTTP防护策略。
(1) 进入系统视图。
system-view
(2) 进入可信接入代理视图或可信API代理视图。
¡ 进入可信接入代理视图。
trusted-app-proxy proxy-name
¡ 进入可信API代理视图。
trusted-api-proxy proxy-name
(3) 开启可信代理。
service enable
缺省情况下,可信代理处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置可信访问控制后的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除可信访问控制的统计信息。
表1-1 可信代理显示和维护
配置 |
命令 |
显示IAM可信访问控制器的信息 |
display trusted-access controller [ name controller-name ] |
显示API ID和API URL的对应关系 |
display trusted-access api-id-url [ name controller-name ] [ slot slot-number ] |
显示可信接入代理的信息 |
display trusted-app-proxy [ brief | name trusted-proxy-name ] |
显示可信API代理的信息 |
display trusted-api-proxy [ brief | name trusted-proxy-name ] |
显示可信接入代理的统计信息 |
display trusted-app-proxy statistics [ name trusted-proxy-name ] [ slot slot-number ] |
显示可信API代理的统计信息 |
display trusted-api-proxy statistics [ name trusted-proxy-name ] [ slot slot-number ] |
清除用户鉴权成功的记录 |
reset trusted-access permitted-record { api-auth | app-auth } user user-name |
清除可信接入代理的统计信息 |
reset trusted-app-proxy statistics [ trusted-proxy-name ] |
清除可信API代理的统计信息 |
reset trusted-api-proxy statistics [ trusted-proxy-name ] |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!