Kubeconfig

Fornisce autorizzazioni ad un utente.

# Creazione cluster nel kubeconfig

kubectl --kubeconfig=./kubeconfig config set-cluster k8s-cluster \
  --server=https://192.168.1.XXX:6443 \
  --certificate-authority=/kubeconfig \
  --embed-certs=true

# Creazione ServiceAccount e token

kubectl create serviceaccount utente 
TOKEN=$(kubectl create token utente --duration=8760h)

# Configurazione credenziali utente

kubectl --kubeconfig=./kubeconfig config set-credentials utente \
  --token=$TOKEN

# Creazione contesto cluster + utente

kubectl --kubeconfig=./kubeconfig config set-context utente-context \
  --cluster=k8s-cluster \
  --user=utente2

# Impostazione contesto di default 

kubectl --kubeconfig=./kubeconfig config use-context utente-context  
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: pod-reader
  namespace: default
rules:
- apiGroups: [""]
  resources: ["pods"]
  verbs: ["get", "list", "watch"]
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: utente2-pod-reader
  namespace: default
subjects:
- kind: User
  name: utente2
  apiGroup: rbac.authorization.k8s.io
roleRef:
  kind: Role
  name: pod-reader
  apiGroup: rbac.authorization.k8s.io