Answer
Check the user's group claims (via the token/SSO), confirm matching `g` bindings and `p` rules in policy.csv, verify the object scope (project/app) matches, and remember deny-by-default. The scopes setting must reference the correct claim (e.g., groups). Enabling debug logging on the API server shows which policy decision was made.
Real-world example A user denied sync is fixed by correcting the scopes setting so their SSO group claim is read and mapped to a role.