Apache httpd设置自定义标头前缀

时间:2019-06-27 12:25:09

标签: apache http-headers custom-headers setenvif

我正在使用apache httpd24从aws cognito提取标头并将其传递给JAVA应用程序。

AWS向我发送了以下标头:

用户名电子邮件名字的姓氏

我的目标应用程序具有以下属性:

用户名电子邮件姓氏

我需要发送带有MELLON_前缀(MELLON_username,MELLON_email)的用户名和电子邮件标题。这不需要mod_auth_mellon。当我尝试对此进行硬编码

Header add MELLON_username "someuser"
RequestHeader set MELLON_username "someuser"
Header add MELLON_email "someemail@test.com"
RequestHeader set MELLON_email "someemail@test.com"

它可以工作,但是当我尝试使用来自cognito的变量传递它时,这是行不通的。

例如:

Header add MELLON_username "expr=%{HTTP:X-Amzn-Oidc-Data}"
RequestHeader set MELLON_username "expr=%{HTTP:X-Amzn-Oidc-Data}"
RequestHeader edit MELLON_username "[^.]*." ""
RequestHeader set MELLON_username "expr=%{unbase64:%{HTTP:username}}"
RequestHeader edit MELLON_username "(.*?)(?:\"username\":\")(.*?)(?:\")(.*$)" $2

用户名与此无关。

我尝试使用mod_setenvif模块将其设置为env变量,就像其他一些建议的形式一样,但是还是没有运气。有没有人遇到过这样的事情?

谢谢。

0 个答案:

没有答案