Qustion
Wie kann ich mit dem Client-Zertifikat auf die API-Server-API zugreifen? Nachstehend versucht, aber kein Erfolg.K8S (1.9) Zugriff auf API-Server mit Client-Zertifikat
export K8S_PKI_HOME=/etc/kubernetes/pki
curl -k --key ${K8S_PKI_HOME}/ca.key --cert ${K8S_PKI_HOME}/ca.crt \
https://localhost:6443/api/v1/componentstatuses
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {
},
"status": "Failure",
"message": "componentstatuses is forbidden: User \"kubernetes\" cannot list componentstatuses at the cluster scope",
"reason": "Forbidden",
"details": {
"kind": "componentstatuses"
},
"code": 403
}
Nach X509 Client Certs (Authentication Strategy:
Client-Zertifikatauthentifizierung wird aktiviert, indem die --client-ca-file = somefile Option API-Server übergeben.
Im /etc/kubernetes/manifests/kube-apiserver.yaml, --client-ca-file =/etc/Kubernetes/pki/ca.crt angegeben.
mit einer URL wie 'https: // localhost: 6443/api/v1/componentstatuses', ist es durchaus möglich, dass Sie auch Zugriff auf die _unauthenticated_ Port auf dem Master, in der Regel' http: // localhost : 8080/api/v1/componentstatuses, die sowohl authn als auch authz umgehen konnten –