私は..私はmod_auth_openidc
、以下のコードを使用しています私のプロバイダのログインページなどgoogle
、gluu
およびなどへの不正なユーザーをリダイレクトするためにapache2
サーバを設定したい私のdefault-ssl.conf
ファイルをスニペットこんにちは動的なクエリパラメータ
<IfModule mod_ssl.c>
<VirtualHost _default_:8443>
OIDCProviderMetadataURL https://<my_provider>/.well-known/openid-configuration
OIDCClientID <client_code>
OIDCClientSecret <client_secret>
OIDCRedirectURI https://<my_site>:8443/cgi-bin/
#OIDCAuthRequestParams acr_values=auth_request_params
OIDCResponseType code
OIDCScope "openid profile email"
OIDCSSLValidateServer Off
OIDCCryptoPassphrase 123456
OIDCPassClaimsAs environment
OIDCClaimPrefix USERINFO_
OIDCPassIDTokenAs payload
<Location "/">
Require valid-user
AuthType openid-connect
</Location>
ServerAdmin [email protected]
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
</IfModule>
これで、eveythingは正常です。私のサイトに入ると、apacheは私をOPログインページにリダイレクトします。私は3種類の認証機構を持っており、プロバイダはどのログインページをロードする必要があるのかを、acr_values
と表示言語はui_locales
paramから要求に応じて決定しています。これを行うには、このパラメータをauth requset urlに渡す必要があります。しかし、mod_auth_openidc
で私はできませんでした。私はOIDCAuthRequestParams
を静的に設定することができますが、これは私の問題を解決しません。なぜならログインメカニズムと言語はユーザーの選択に依存するからです。
私はthis documentationを読み、以下のリンクを使用します。しかし、それは動作しません。私は何かを誤解しているかもしれません。
[my_site]?target_link_uri = [my_site/mypage.html] & ISS = [my_provider] & auth_request_params = [URLエンコード-クエリ文字列]
が間違っていることはありますか?どのように私は、動的acr_values
とui_locales
を渡すことができますので、apacheのは、これらのクエリを使用して認証要求を生成