如何解决NGINX-验证oauth2令牌
首先,这是我用来建立websocket连接的技术:
- Sock JS前端,具有STOMP协议
- NGINX作为网络代理
- 将Spring用作具有STOMP协议的套接字服务器
我提供了一个NGINX实例,该实例将代理Web套接字请求,到目前为止,此NGINX配置在没有令牌验证的情况下工作正常。
location /wsapp/ {
proxy_pass http://wsbackend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host; }
想在NGINX中验证和终止令牌,但似乎没有找到一种方法来拦截作为stomp标头的一部分的令牌。有解决方法吗?
解决方法
为了每个遇到相同问题的人的利益,我设法通过不依靠脚踩消息交换来进行令牌验证来解决此问题。
相反,令牌验证是在建立Websocket连接时发生的,并且令牌是通过查询字符串传递的。
let socket = new SockJS('https://example.net/wsapp?myjwt=' + token);
stompClient = Stomp.over(socket);
NGINX将使用auth_jwt指令进行验证:
auth_jwt "JWT Test Realm" token=$arg_myjwt;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。