我们在应用程序中使用opensso对用户进行身份验证。每个应用程序都位于反向代理之后,因此OpenSSO和当用户通过身份验证时,来自单点登录的用户名用于在应用程序中创建用户会话。
OpenSSO部署在主机admin.mynet上的Jetty端口8080上,因此在没有反向代理的情况下运行时,可以通过http admin.mynet:8080/opensso进行访问
SSO服务器应该只能通过反向代理和端口443上的https访问,nginx会将其转换为对端口8080的内部http请求。需要将主机名解析到代理,而不是SSO服务器。所以点击https admin.mynet/opensso应该会显示SSO页面。
问题是,在此配置启动并运行后,点击https://admin.mynet/opensso/UI/Login单点登录将返回位置为http://admin.mynet:8080/opensso/UI/Login的302。因此,SSO不希望处理来自
发布于 2011-09-06 13:03:26
假设admin.mynet的ip地址为10.0.0.10,则以下地址块应可用:
server {
listen 443;
server_name admin.mynet;
ssl on;
location / {
proxy_pass http://10.0.0.10:8080;
proxy_set_header X-Real-IP $remote_addr;
}
location /opensso {
proxy_pass http://10.0.0.10:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host admin.mynet:8080;
}
}https://stackoverflow.com/questions/7314311
复制相似问题