after some further tinkering i realize i misunderstood the 'admin groups' section of data access privileges and the role was inheriting stuff from other groups. after changing some groups to no access it is mostly working for local test group/user but not for AD groups.
local test user -> test local group -> RBAC mapped to super admin menu access and custom restricted data access
- properly gets read only access to devices
- read only access to RBAC policy (i could live with this)
- seems to have all other rights from what i can tell
external AD group -> mapped to ISE group -> RBAC mapped to super admin menu access and custom restricted data access
- still has full super-admin access. i'm not sure where it is picking those privileges up from