저는 모든 웹 서버에 대한 WAM 역할을 하는 IBM WebSEAL이라는 애플리케이션을 가지고 있습니다. Active Directory에서 인증하고 WebSEAL 사용 가능 자원에 액세스하면 WebSEAL은 kerberos 티켓에서 내 사용자 ID를 가져와 iv-user
http 요청 헤더에 내 Windows NT ID를 설정합니다. 이제 내 애플리케이션과 해당 애플리케이션의 REMOTE_USER
Apache 변수 읽기에 대해 SSO를 구성하고 싶습니다. 내 질문은. 어떻게 iv-user
다시 쓸 수 있나요 REMOTE_USER
? 어떤 조언이라도 높이 평가될 것입니다! 추신. Apache가 이 변수를 볼 수 있음을 확인할 수 있습니다 iv-user
.
편집하다:
가상 호스트 구성:
[root@otrs conf]# httpd -t -D DUMP_VHOSTS
VirtualHost configuration:
*:443 otrs-1-lab.local.dom. com (/etc/httpd/conf.d/ssl.conf:56)
[root@otrs conf]# less /etc/httpd/conf.d/zzz_otrs.conf
<IfModule mod_perl.c>
# Setup environment and preload modules
Perlrequire /opt/otrs/scripts/apache2-perl-startup.pl
# Reload Perl modules when changed on disk
PerlModule Apache2::Reload
PerlInitHandler Apache2::Reload
# general mod_perl2 options
<Location /otrs>
# ErrorDocument 403 /otrs/customer.pl
ErrorDocument 403 /otrs/index.pl
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
Options +ExecCGI
PerlOptions +ParseHeaders
PerlOptions +SetupEnv
<IfModule mod_version.c>
<IfVersion < 2.4>
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
</IfModule>
<IfModule !mod_version.c>
Order allow,deny
Allow from all
</IfModule>
</Location>
# mod_perl2 options for GenericInterface
<Location /otrs/nph-genericinterface.pl>
PerlOptions -ParseHeaders
</Location>
</IfModule>
<Directory "/opt/otrs/bin/cgi-bin/">
AllowOverride None
Options +ExecCGI -Includes
<IfModule mod_version.c>
<IfVersion < 2.4>
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
</IfModule>
<IfModule !mod_version.c>
답변1
아파치mod_setenvif확실히 당신을 위해 뭔가를 할 것입니다. 나는 다음과 같은 것을 시도할 것입니다:
SetEnvIf iv-user "(.*)$" REMOTE_USER=$1
그래도 작동하지 않으면 SetEnvIfExpr
지시문을 사용할 수도 있습니다.