Как передать авторизационный токен в Websocket API - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь выполнить модуль kubernetes с помощью Websocket, что в соответствии с документом kubernetes может быть достигнуто путем передачи Bearer THETOKEN

При использовании аутентификации токена носителя с клиента httpсервер API ожидает заголовок авторизации со значением Bearer THETOKEN

Вот пример для 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 соединение с веб-браузером

Как передать этот Beaer Token в веб-сокет согласно документу, стандартного способа передачи не существуетнастраиваемый заголовок

параметр запроса URI URI access_token = TOKEN-носитель в запросе API не работает и аутентификация запрещена с 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
...