如何在Websocket API中传递授权承载令牌

时间:2019-09-30 12:02:53

标签: kubernetes websocket xterm

我正在尝试使用Websocket执行kubernetes pod,根据kubernetes文档,可以通过传递 Bearer THETOKEN

来实现

当使用来自http客户端的承载令牌认证时,API服务器需要一个值为Bearer THETOKEN的Authorization标头

这里是wscat传递标头值--header "Authorization: Bearer $TOKEN"以建立exec到pod并成功建立连接的示例

/ # wscat  --header "Authorization: Bearer $TOKEN"  -c "wss://api.0cloud0.com/api/v1/namespaces/ba410a7474380169a5ae230d8e784535/pods/txaclqhshg
-6f69577c74-jxbwn/exec?stdin=1&stdout=1&stderr=1&tty=1&command=sh"

但是从网络浏览器进行Websocket API连接时

  

如何按照文档在Web套接字中传递此Beaer令牌,没有标准的方法可以传递自定义标头

在API查询中尝试使用URI查询参数 access_token = Bearer TOKEN 无效,并且使用403拒绝了身份验证

wss://api.0cloud0.com/api/v1/namespaces/ba410a7474380169a5ae230d8e784535/pods/txaclqhshg-%206f69577c74-jxbwn/exec?stdout=1&stdin=1&stderr=1&tty=1&command=%2Fbin%2Fsh&command=-i&access_token=$TOKEN

0 个答案:

没有答案