talosctl gen config dev-talos-cluster https://192.168.1.95:6443 --output-dir _out-new --with-secrets ../secrets.yaml --config-patch @patch.yamlpatch.yaml :
cluster:
apiServer:
extraArgs:
oidc-issuer-url: "https://dex-dev.toolsera.fr/dex/"
oidc-client-id: "kubernetes"
oidc-username-claim: "email"
oidc-groups-claim: "groups"==============================================================
talosctl patch mc --nodes 192.168.1.50,192.168.1.95,192.168.1.101 --patch @patch.yaml -m reboot #only on control plane nodeCreate a user named “oidc”
The client id and secret id comes from file config.yaml of dex.
kubectl config set-credentials oidc \
--exec-api-version=client.authentication.k8s.io/v1beta1 \
--exec-command=kubectl \
--exec-arg=oidc-login \
--exec-arg=get-token \
--exec-arg=--oidc-issuer-url="https://dex-dev.toolsera.fr/dex/" \
--exec-arg=--oidc-client-id="kubernetes" \
--exec-arg=--oidc-extra-scope="email" \
--exec-arg=--oidc-client-secret="YOUR_OIDC_CLIENT_SECRET_HERE"
kubectl create clusterrolebinding oidc-cluster-admin --clusterrole=cluster-admin --user='markkpamy@gmail.com'