【发布时间】:2018-10-03 03:38:27
【问题描述】:
我已经使用 Auth0 和 Google App Oauth 成功地使用 mod_auth_openidc 配置了 apache Web 服务器来保护我们的内部仪表板,如本文档中所述: - https://github.com/zmartzone/mod_auth_openidc#openid-connect-sso-with-google-sign-in - https://auth0.com/docs/quickstart/webapp/apache/01-login(不使用 auth0 规则管道)
我的问题是如何将用户的声明作为 http 标头传递给上游层(我们的内部工具/仪表板)?有可能吗?
问候, 阿贡
更新
我已经尝试过here 的建议, 这是我的 /etc/apache2/sites-available/000-default.conf 的 sn-p
<VirtualHost *:443>
ServerName my-host-name
UseCanonicalName on
ProxyPreserveHost on
DocumentRoot /var/www/html
# Pass the user's claim as http headers
OIDCPassClaimsAs "headers"
OIDCPassUserInfoAs "claims"
OIDCPassRefreshToken "On"
<Location />
AuthType openid-connect
<RequireAll>
Require claim email~^(.*)@domain.com$
Require claim email_verified:true
</RequireAll>
ProxyPass http://echo-server.default.svc.cluster.local:8080/
ProxyPassReverse http://echo-server.default.svc.cluster.local:8080/
LogLevel debug
</Location>
</VirtualHost>
我使用 echoserver (gcr.io/google_containers/echoserver:1.0) 作为 http://echo-server.default.svc.cluster.local:8080 的后端,它不会将任何用户的声明打印为 http 标头。我是否有任何错误配置?如何调试这个问题?
【问题讨论】:
标签: apache oauth-2.0 mod-auth-openidc