
私は、すべてのWebサーバーのWAMとして機能するIBM WebSEALというアプリケーションを持っています。 Active Directory で認証して WebSEAL 使用可能リソースにアクセスすると、WebSEAL は kerberos チケットから自分のユーザー ID を取得し、iv-user
http 要求ヘッダーに Windows NT ID を設定します。私は私のアプリケーションとそのアプリケーションのREMOTE_USER
Apache変数を読み取るためにSSOを設定したいと思います。私の質問は。どのようiv-user
に書き換えることができますかREMOTE_USER
?どんなアドバイスでも高く評価されます! PS。 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
Apachemod_setenvif確かにあなたのために何かをします。私は次のことを試してみます:
SetEnvIf iv-user "(.*)$" REMOTE_USER=$1
それでも機能しない場合は、SetEnvIfExpr
ディレクティブを使用することもできます。