你好,我想配置apache2
服務器未經授權的用戶重定向到我的供應商登錄頁面,如google
,gluu
和等。我使用mod_auth_openidc
和下面的代碼片斷我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>
現在有了這個配置,一切都很好。當我進入我的網站時,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產生這些查詢的身份驗證請求參數