Python Keystone separates the role and role assignment backends allowing the operator to override only one of them. We should split our assignment backend interface into the role and assignment backends to follow that: https://opendev.org/openstack/keystone/src/commit/81e2908aa6b8509f414f9ed20a5c21ed0b7f59b3/keystone/conf/assignment.py and https://opendev.org/openstack/keystone/src/commit/81e2908aa6b8509f414f9ed20a5c21ed0b7f59b3/keystone/conf/role.py