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)并查看它报告的内容. (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Netty vs Nginx:基于性能,内存管理,内存占用量的优缺点
- 身份验证 – nginx auth_basic时间限制
- node.js-无法从nodemailer发送电子邮件
- linux – 多个Nginx服务器是否使用ip_hash指令将相同的IP地
- 设置Nginx以将一台服务器上的失败请求代理到另一台服务器
- 如何在公司代理后面配置Nginx
- Nginx conf中的短路逻辑(想覆盖一个位置)
- 如何读取从nginx传递的python / flask中的UWSGI参数
- nginx-加载SVG时出错-ERR_CONTENT_DECODING_FAILED
- node.js-使用Nginx乘客时如何在节点Express应用程序中查看c