That is the core of running OpenShift with least privilege. Every extra permission is a possible attack path. Every cluster role misused is an open door you might not see until it's too late. Least privilege is not an option. It is the standard for securing workloads in OpenShift.
Least privilege in OpenShift means defining the exact permissions a service account, pod, or user needs—and nothing more. You strip away admin rights from workloads that only need read access. You remove wildcard RoleBindings that turn a single namespace permission into global cluster access. You replace broad ClusterRoles with precise, resource-specific Roles.
You start by auditing what runs in your cluster. Identify which service accounts run workloads. Check their bound Roles and ClusterRoles. Review verbs like create, delete, and update. Avoid granting * verbs or * resources unless absolutely required.
Use Namespaces to segment workloads and contain permissions. Tie RoleBindings to only one namespace unless there is a clear, documented reason to go wider. For OpenShift platform components, keep the built-in service accounts as they are, but for application workloads create dedicated accounts with only the access they require.