首页 > 解决方案 > Kubernetes OpenID Connect 身份验证失败时的日志

问题描述

我尝试为 OpenID Connect (OIDC) 身份验证设置 Kubernetes 1.13,如下所示:

根据我对文档的阅读,kubectl现在应该能够以my_user. 然而,kubectl get nodes说:

error: You must be logged in to the server (Unauthorized)

curl -k https://api_server:6443/api/v2/nodes --header "Authorization: Bearer $id_token"说:

{
  "kind": "Status",
  "apiVersion": "v1",
  "metadata": {},
  "status": "Failure",
  "message": "Unauthorized",
  "reason": "Unauthorized",
  "code": 401
}

kubectl logs $kube_apiserver -n kube-system, journalctl -u kubelet.service, 和 Keycloak 的标准输出都是无声的。那么我在哪里可以看到更多的日志信息来辨别 OIDC 身份验证可能出错的地方呢?

--v客户端( )或服务器(例如 API 服务器)上的UPDATE选项在keyctl一定程度上有所帮助。

标签: kubernetesopenid-connectkeycloak

解决方案


如果您使用email声明,Kubernetes 要求您的email_verified声明为true. 在 Keycloak 中,默认设置为false.

来源:https ://github.com/kubernetes/kubernetes/search?q=email_verified&unscoped_q=email_verified


推荐阅读