我有一个名为“MELLON_NAME_ID”的变量进入 Apache,作为 SSO 的 mod_auth_mellon 的一部分。它使用“DOMAIN\Username”填充变量,而我需要仅使用其中的“Username”部分填充 REMOTE_USER 变量。这可能吗?
编辑:它还使用相同的值填充 REMOTE_USER,因此我真正需要的是删除“DOMAIN\”部分。
谢谢!
要拆分名称 ID 字段,请将标头视为变量。将其设置为副本,然后使用 regex(正则表达式)替换来编辑该副本。仅供参考:我认为 mod_headers 是必需的。
示例:
RequestHeader set username "%{MELLON_NAME_ID}e"
RequestHeader set domain "%{MELLON_NAME_ID}e"
RequestHeader edit username "^.*\\\(.*)" "$1"
RequestHeader edit domain "^(.*)\\\.*" "$1"
Header set username "%{MELLON_NAME_ID}e"
Header set domain "%{MELLON_NAME_ID}e"
Header edit username "^.*\\\(.*)" "$1"
Header edit domain "^(.*)\\\.*" "$1"
如果您希望这些标头继续存在,请设置
RequestHeader
,例如,这是另一个应用程序的代理,该应用程序需要为其传入请求设置这些标头。
如果您希望这些标头在对浏览器的响应中返回(或任何期望响应的内容),请设置
Header
。
注意:问题说的是Apache 2.2,但我只在Apache 2.4上测试过。