nginx – 使用Spring Cloud OAuth2的SSL /代理问题
我改编了以下OAauth2 Spring Cloud示例: Authserver/SSO 我做的唯一更改是在Authserver端使用JPA来检查数据库中的凭据.一切都运行良好,除了在nginx代理后面部署它.如上面的示例应用程序中所使用的,使用Spring Boot和嵌入式Tomcat.我还正确配置了代理头:
代理HTTP正在运行:
到目前为止一切顺利,但我需要使用SSL(显然):
如果我切换到SSL,我会在auth服务器从授权重定向后从我的客户端应用程序获得401.我捕获了HTTP流量,一切似乎都有效: > GET请求客户端应用程序 HTTP和HTTPS的HTTP流量完全相同,只是对于HTTP,为最后一个请求设置了适当的引用(AFAIK,在OAuth身份验证期间未检查引用,对吧?): HTTP:
HTTPS:
客户端应用程序的相应日志消息:
使用代理和SSL的任何想法都不起作用?我很乐意分享更多代码和/或日志输出! 谢谢!!! 在SSO应用程序尝试交换令牌的身份验证代码时,它似乎失败了.之前的所有步骤都是浏览器重定向,这是尝试调用auth服务器的SSO服务器上的代码. 你在auth服务器上使用什么SSL证书?它们是否由Java信任库中具有CA的受信任方签署? 如果没有,这可能是它失败的原因,因为BadCredentialsException是底层HTTP请求失败的最终结果. 另一种选择是没有直接从SSO服务器到Auth服务器地址的路由. 我相信它最终会处理请求的Apache Commons HttpClient代码,所以你应该尝试增加这些类的调试(org.apache.http)并查看它报告的内容. (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 解决新Nginx安装问题的步骤
- ruby-on-rails-Nginx,Unicorn和Rails = 502错误网
- linux – 当master从命令行运行时,puppet master
- node.js-使用Nginx乘客时如何在节点Express应用程
- 带有Nginx和Chrome的通配符* .localhost SSL
- python – Django Admin FORCE_SCRIPT_NAME登录重
- linux – 无法启动php-fpm – “无法为用户’apa
- ruby-on-rails – nginx limit_req速率限制的问题
- django – nginx不提供管理静态文件?
- 自定义401页面不提示在Nginx上输入凭据