如何配置squid proxy和greasyspoon ICAP服务器以访问user_id

时间:2015-08-05 22:18:36

标签: squid greasyspoon icap

我们正在使用squid代理和GreasySpoon ICAP服务器来修改响应以用于开发目的。我们需要允许不同的开发人员对响应进行不同的修改,因为他们正在处理与不同修改相关的事情。最初,当我们在LAN中安装此设置时,我们可以通过使用GreasySpoon响应脚本中的user_id脚本参数来适应这种情况。此参数使用开发人员的本地IP填充,因此我们可以基于不同的IP。

当我们将设置移至云端时,每个人都拥有user_id参数的共享WAN IP,因此我们的方案已经崩溃。

默认GreasySpoon脚本中的注释表明user_id可以是用户登录:

// user_id        :  (String)user id (login or user ip address)

我使用squid服务器配置了身份验证,但user_id仍设置为我们的共享WAN IP。是否可以使用squid使用代理用户的用户名在GreasySpoon中填充此脚本参数?

1 个答案:

答案 0 :(得分:0)

GreasySpoon(1.0.10)配置文件service.properties包含一个设置:SpoonScript.icapuserheader=x-authenticated-user。这是GreasySpoon检查找到user_id的标题。如果找不到此值,则GreasySpoon会回退到IP地址。因此,您必须配置squid以在身份文件中配置的相同标头中发送经过身份验证的用户的用户名。

// in squid.conf:
icap_client_username_header x-authenticated-user