Hi All,
Please find design document [1] for integrating ovirt-engine with Keycloak
 using mod_auth_openidc. Engine can be configured to use external IDP to
 handle user authentication while still supporting Rest API bearer 
authentication.
There are some changes to how 
clients will obtain tokens to use for bearer authentication. All clients
 need to request tokens from the external IDP and use it to access 
engine. When external authentication is enabled admin@internal and all 
internal profiles for authentication are disabled. Please see the design
 document for more details.
Thanks
Ravi
Integration Issues that need attention
1.
 Ovirt-engine Python, Java and Ruby SDKs need to be modified to obtain 
token from either engine SSO or external OpenID Connect IDP.
2. OVN if we are not using SDK needs to be modified to obtain token from either engine SSO or external OpenID Connect IDP.
3.
 OVN changes needed to config user admin@internal. admin@internal access
 will be disabled if external integration is enabled. So OVN needs to be
 configurable to use another user for REST API access.
4. Ansible is using SDK, if SDK is fixed to use a file the file needs to passed from ansible to SDK.
5.
 Cloudforms and Satellite are using Ruby SDK, we need to file a bug to 
fix the issue. The file with the details of external IDP URL and 
client-id and client-secret needs to be passed to SDK.
6. REST API SDK V3 is not going to work with password and negotiate authentication
7. VM Single Sign-on will not work as we don’t have a password.