Web身份验证
身份验证、授权和审计现在能够将用户身份验证到web服务器,提供web服务器在HTTP请求中需要的凭据,并分析web服务器响应以确定用户身份验证成功。与其他类型的身份验证策略一样,Web身份验证策略由表达式和操作组成。创建身份验证策略后,将其绑定到身份验证虚拟服务器,并为其分配优先级。在绑定它时,还可以将其指定为主要策略或次要策略。
要使用特定的web服务器设置基于web的身份验证,首先要创建一个web身份验证操作。由于web服务器的身份验证不使用严格的格式,因此在创建操作时必须准确地指定web服务器需要哪些信息以及使用哪种格式。为此,您可以在Citrix ADC设备高级策略中创建一个包含以下项的表达式:
- 服务器IP-认证Web服务器的IP地址。
- 服务器端口-认证Web服务器端口号。
- 验证规则- Citrix ADC设备中的表达式高级策略,以Web服务器期望的格式包含用户凭据。
- 计划-HTTP(用于未加密web认证)或HTTPS(用于加密web认证)。
- 成功的法则- Citrix ADC设备中的表达式,与web服务器响应字符串匹配,表示用户认证成功。
其他参数请按照add authentication action命令的正常规则配置。
接下来,创建与该操作关联的策略。该策略类似于LDAP策略,并且与LDAP策略一样使用Citrix ADC设备语法。
请注意
这些说明假设您已经熟悉要进行身份验证的web服务器的身份验证要求,并且已经配置了web身份验证服务器。
使用命令行配置Web认证动作
要在命令行上创建web身份验证动作,在命令行上键入以下命令:
add authentication webAuthAction -serverIP -serverPort [-fullReqExpr ] -scheme (http | https) -successRule [-defaultAuthenticationGroup ][-Attribute1 ][-Attribute3 ][-Attribute4 ][-Attribute6 ][-Attribute7 ][-Attribute8 ][-Attribute9 ][-Attribute10 ][-Attribute12 ][-Attribute13][-Attribute11 ][-Attribute12 ][-Attribute14 ][-Attribute15 ][-Attribute16 ]
例子
添加策略表达式post_data "\"username=\" + http.REQ.BODY(1000). set_text_mode (IGNORECASE). after_str (\"login=\"). before_str (\"& ") + \"& password =\" + http.REQ.BODY(1000). set_text_mode (IGNORECASE). after_str (\"login=\" + http.REQ.BODY(1000). set_text_mode (IGNORECASE). after_str (\"login=\"). before_str (\"login=\"). before_str (\"& ") + \" password =\" + http.REQ.BODY(1000). set_text_mode (IGNORECASE). after_str (\"login=\"). before_str (\"& ") + \" password =\" + http.REQ.BODY(1000). set_text_mode (IGNORECASE). after_str (\"login=\"). before_str (\"& "). after_str (\"passwd=\"))length" add authentication webAuthAction webAuth_POST -serverIP 10.106.187.54 -serverPort 80 -fullReqExpr q{"POST /MyPHP/auth.php HTTP/" + HTTP .req.version.major + "."+ http.req.version.major + "\r\nAccept:*/*\r\nHost: 10.106.187.54\r\nReferer: http://10.106.187.54/MyPHP/auth.php\r\nAccept- language: en-US\r\nUser-Agent: Mozilla/5.0 (compatible;MSIE 9.0;Windows NT 6.1;Trident/5.0)\r\nContent-Type: application/x-www-form-urlencoded\r\n" + "Content-Length: " + length_post_data + "\r\nConnection: Keep-Alive\r\n\r\n" + post_data} -scheme http -successRule "http.res.status.eq(200)"<!——NeedCopy >
使用配置实用程序配置Web身份验证操作
请注意
在配置实用程序中,使用术语服务器而不是操作,但指的是相同的任务。
- 导航到安全> AAA -应用流量>策略> LDAP.
在详细信息窗格中,在服务器选项卡,执行以下操作之一:
- 如果需要新建web认证动作,请单击添加.
- 如果需要修改已创建的web认证动作,请在右侧数据窗格中选择需要修改的动作,单击编辑.
- 如果正在创建新的web身份验证操作,请在创建认证Web服务器对话框,的名字文本框中,为新的web身份验证操作键入名称。名称长度为1 ~ 127个字符,由大写字母、小写字母、数字、“-”和“_”组成。如果您正在修改已存在的web认证动作,请跳过此步骤。名称为只读;
- 在Web服务器IP地址文本框,输入认证web服务器的IPv4或IPv6 IP地址。如果是IPv6地址,请先选中“IPv6”复选框。
- 在“端口”文本框中,键入web服务器接受连接的端口号。
- 选择HTTP或HTTPS在协议下拉列表。
- 在“HTTP请求表达式”文本区域中,键入一个pcre格式的正则表达式,该正则表达式创建web服务器请求,其中包含身份验证web服务器所期望的准确格式的用户凭据。
- 在“验证身份验证的表达式”文本区域中,键入Citrix ADC设备高级策略表达式,该表达式描述web服务器响应中指示用户身份验证成功的信息。
- 按照常规身份验证操作文档中的描述填写其余字段。
- 点击好吧.
Web身份验证
复制!
失败了!