Я постараюсь обобщить ответ, который я дал в комментариях.
Вопрос был: Почему запуск kubectl -s http://localhost:8001 --kubeconfig /dev/null --token <invalid_token>
(где: 8001 - порт, открытый прокси-сервером kubectl) выполняет репоонды, как если бы Я был авторизован, хотя этого не должно быть, потому что я установил все возможные параметры авторизации на нулевые или неправильные значения?
Ответ таков: kubectl proxy
открывает порт и выполняет всю авторизацию за вас, поэтому вы не должен. Теперь для доступа к REST api кубернетов все, что вам нужно сделать, это использовать curl localhost:8001/...
. Нет токенов и сертификатов.
Поскольку вы уже авторизованы с kubectl proxy
, используя kubectl и указав его на localhost: 8001 вызывает то, что авторизация не требуется, и вам не понадобятся никакие токены для доступа к8с.
В качестве альтернативы вы можете проверить, что происходит, когда вы запускаете то же самое, но вместо подключения через kubectl proxy
вы используете порт kubernetes напрямую.
Вы упомянули, что используете minikube, поэтому по умолчанию это будет порт 8443
$ kubectl --kubeconfig /dev/null -s https://$(minikube ip):8443 --token "invalid" --insecure-skip-tls-verify get pods
error: You must be logged in to the server (Unauthorized)
Теперь вы видите, что все работает как положено.