Slide 24
Slide 24 text
Kubernetes API
Anonymous Request
● 認証情報を含まないリクエストを送信すると Anonymous Request として処理される
● このとき RBAC としては system:anonymous User と system:unauthenticated Group になる
● もしこのロールに権限を付与した場合、外部からクラスタを操作できてしまうことに繋がる
❯ curl -k https://192.168.99.110:8443/api/v1/namespaces/
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {
},
"status": "Failure",
"message": "namespaces is forbidden: User \"system:anonymous\" cannot list resource …”,
"reason": "Forbidden",
"details": {
"kind": "namespaces"
},
"code": 403
}
❯ curl -k
https://192.168.99.110:8443/api/v1/namespaces/
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {
},
"status": "Failure",
"message": "Unauthorized",
"reason": "Unauthorized",
"code": 401
}
kube-apiserver に anonymous-auth=false を設定することで Anonymous Request を拒否できる