Citrix ADC

用例:访问控制和身份验证

在高安全区域,客户端访问资源时必须对用户进行外部认证。在Citrix ADC设备上,可以通过评估提供的凭据,使用HTTP标注对用户进行外部身份验证。在本例中,假设客户端通过请求中的HTTP头发送用户名和密码。但是,可以从URL或HTTP主体获取相同的信息。

为了实现此配置,您需要完成以下任务:

  1. 在Citrix ADC设备上启用响应器特性。
  2. 在设备上创建一个HTTP标注,并使用关于外部服务器和其他必需参数的详细信息对其进行配置。
  3. 配置响应程序策略以分析响应,然后全局绑定策略。
  4. 在远程服务器上创建详图索引代理。

使回答者

响应器特性必须在Citrix ADC设备上使用之前启用。

使用配置实用程序启用响应器

  1. 确保已安装响应程序许可证。
  2. 在configuration utility中,展开AppExpert,右键单击Responder,然后单击启用响应器特性.

在Citrix ADC设备上创建HTTP标注

使用下表中所示的参数设置创建HTTP标注HTTP- callout -3。有关创建HTTP标注的详细信息,请参见配置HTTP调用.

表1。HTTP-Callout-3的参数和值

参数 价值 的名字
的名字 Policy-Responder-3

参数

价值

的名字

HTTP-Callout-3

服务器接收调出请求:

IP地址

10.103.9.95

港口城市

80

请求发送到服务器:

方法

得到

主持人的表情

10.102.3.95

URL干细胞表达

“/cgi-bin/authenticate.pl”

:

的名字

请求

值表达式

Callout请求

参数:

的名字

用户名

值表达式

HTTP.REQ.HEADER(“用户名”)value (0)

的名字

密码

值表达式

HTTP.REQ.HEADER(“密码”).VALUE(0)

服务器响应:

返回类型

文本

表达式从响应中提取数据

HTTP.RES.BODY (100)

创建响应器策略来分析响应

创建响应者策略policy-responder-3,如果源IP地址已被列入黑名单,该策略将检查来自callout服务器的响应并重置连接。使用下表中所示的参数设置创建策略。虽然您可以在策略子节点中创建响应者策略,然后使用响应者策略管理器全局绑定它,但本演示使用响应者策略管理器创建响应者策略并全局绑定策略。

表2。Policy-Responder-3的参数和值

参数 价值
的名字 Policy-Responder-3
行动 重置
未定义的结果操作 全球undefined-result行动——
表达式 请求“HTTP.REQ.HEADER(\“\”)。EQ(\“Callout请求\”)。没有T && SYS.HTTP_CALLOUT(HTTP-Callout-3).CONTAINS(\“Authentication Failed\”)”

使用配置实用程序创建响应器策略并全局绑定它

  1. 导航到AppExpert>应答器.
  2. 在“详细信息”窗格中的策略经理,点击响应程序策略管理器.
  3. 应答策略经理对话框中,单击覆盖全球.
  4. 点击插入政策,然后,在保单名称列中,单击新政策.
  5. 创建响应程序策略对话框,执行以下操作:

    1. 在名称中,键入Policy-Responder-3。
    2. 在行动中,选择重置.
    3. 在未定义结果操作中,选择全局未定义结果操作。
    4. 在“表达式”文本框中,键入:
    请求“HTTP.REQ.HEADER(\“\”)。EQ(\“Callout请求\”)。没有T && SYS.HTTP_CALLOUT(HTTP-Callout-3).CONTAINS(\"Authentication Failed\")" 
    1. 点击创建,然后单击关闭.
  6. 点击应用更改,然后单击关闭.

在远程服务器上创建HTTP标注代理

现在需要在远程调出服务器上创建一个HTTP调出代理。HTTP调出代理接收来自Citrix ADC设备的调出请求并进行适当响应。调出代理是一种脚本,它对于每个部署都是不同的,在编写时必须考虑服务器规范,比如支持的数据库类型和脚本语言。

下面是示例调出代理伪代码,用于验证提供的用户名和密码是否有效。代理可以用您选择的任何编程语言实现。伪代码仅用作开发调出代理的指导原则。您可以在程序中构建额外的功能。

使用伪代码验证提供的用户名和密码

  1. 接受请求中提供的用户名和密码,并适当设置其格式。
  2. 连接到包含所有有效用户名和密码的数据库。
  3. 根据数据库检查提供的凭据。
  4. 按照HTTP调用的要求格式化响应。
  5. 将响应发送到Citrix ADC设备。
用例:访问控制和身份验证