Sum*_*osh 5 apache jboss wildfly keycloak mod-auth-openidc
我想设置一个非常简单的系统,通过 Apache2 及其mod_auth_openidc模块授予对静态目录的授权访问权限,使用 Keycloak 作为 OAuth (OpenID Connect) 服务器。在浏览了我能找到的所有文档和文章后,我得到了以下配置。
<VirtualHost *:80>
DocumentRoot /var/www/html
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Redirect permanent '/' https://%{HTTP_HOST}
</VirtualHost>
<VirtualHost *:443>
DocumentRoot /var/www/html
ProxyPreserveHost On
ProxyRequests Off
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
ProxyPass /auth http://127.0.0.1/auth
ProxyPassReverse /auth http://127.0.0.1/auth
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
OIDCOAuthIntrospectionEndpoint https://127.0.0.1/auth/realms/Localserv/protocol/openid-connect/token/introspect
OIDCOAuthIntrospectionEndpointParams token_type_hint=access_token
OIDCOAuthClientID Apache
OIDCOAuthClientSecret 8947ff67-4a8d-4391-81cf-9b6c168e189d
OIDCProviderMetadataURL https://127.0.0.1/auth/realms/Localserv/.well-known/openid-configuration
OIDCRedirectURI https://www.example.com/example/redirect_uri
OIDCCryptoPassphrase random1234
<Location /secret/>
AuthType oauth20
Require claim iss:https://127.0.0.1/auth/Localserv/master
</Location>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
关于我的设置的更多事实:
我在同一台机器上运行 Keycloak 服务器,使用 Apache 作为它的反向代理。从上面的配置文件中也可以看到这一点。
另外,我想提供简单的纯静态文件,我没有任何可以处理 OAuth 流程的客户端应用程序。所以我希望 OAuth 客户端流程仅由 mod_auth_openidc 处理。如果未经授权的用户尝试访问,它应该重定向到登录页面,然后在正确登录(通过 Keycloak OAuth 服务器进行身份验证)时,它应该授予访问权限。
现在我的问题是
我需要设置OIDCRedirectURI指令吗?如果我这样做了,它的价值应该是多少?
我的要求的总体设置应该是什么?我觉得我没有走正确的方向,所以任何帮助将不胜感激。
| 归档时间: |
|
| 查看次数: |
2406 次 |
| 最近记录: |