When logging into Tanzu Mission Control (TMC), the landing page shows the following error:
errcode: 3012 errmsg: Forbidden requestId: <request Id>
Tanzu Mission Control Self-Managed
The user you are logging in as has been detected by the system to not be in the Identity Provider's (IDP) admin group for Tanzu Mission Control Self-Managed (TMC-SM).
This admin group for TMC is defined in the idpGroupRoles of the values.yaml used to install TMC-SM.
Identity Provider components have case-sensitivity and can cause the same error if the casing for the defined admin group in the TMC values.yaml does not match the IDP's admin group casing.
You will need to check the admin group configured with your Tanzu Mission Control Self-Managed (TMC-SM) install and confirm that the user you are using to login is a part of that admin group in your Identity Provider (IDP).
You can validate the user and group that the latest login attempt used with the below steps:
kubectl get secret -n tmc-local | grep "pinniped-storage-access-token"
kubectl get secret -n tmc-local -o jsonpath='{.data.pinniped\-storage\-data}' <latest pinniped-storage-access-token secret> | base64 -d
The current propagated configuration from the last applied values.yaml can be found in the following steps:
kubectl get secret -n tmc-local tanzu-mission-control-tmc-local-values -o jsonpath='{.data.values\.yaml}' |base64 -d
If you need to make updates to the values.yaml configuration applied to your TMC-SM instance, use the below tmc-sm CLI command with your updated values.yaml file:
tmc-sm update --values-file <updated values.yaml file>
If you encounter the below error message, in TMC-SM v1.4.3 and higher the claimsUsername is no longer a field that is automatically applied to your OIDCIdentityProvider and you must update your values.yaml to include it:
unprocessable entity: required claim in upstream ID token missing