But when the users tries to access Kibana, after authenticating against Keycloak, they are sent to the login form.
On the Kibana logs:
[15:09:13:373] [debug][plugins][ReadonlyREST][samlController] Obtained user name from profile: undefined
[15:09:13:373] [debug][plugins][ReadonlyREST][samlController] Obtained groups from profile:
[15:09:13:373] [debug][plugins][ReadonlyREST][samlController] Created JWT for ROR with claims: {"groups":[],"assertion":{"issuer":"https://issuer","inResponseTo":"XXX","sessionIndex":"XXX","nameID":"gustavo.yoshizaki@avature.net","nameIDFormat":"urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress","Role":"offline_access"},"x-ror-origin":"saml_serv1"}, (size: 631 of 8185 Bytes))
[15:09:13:695] [debug][plugins][ReadonlyREST][legacyRenderer] Fetching frontend dependency: /usr/share/kibana/plugins/readonlyrestkbn/proxy/preKibanaProxy/auth/../../../node_modules/jquery/dist/jquery.min.js
[15:09:14:124] [info][plugins][ReadonlyREST][authController] Could not login in: Empty metadata
“Could not login, empty metadata” means that the ACL has allowed the request, but the matching ACL block does not include an authentication rule. I.e. login request was allowed by a rule based on “hosts” rule.
What I can see is that ROR Enterprise did not find any groups in the assertion. I see you configured “memberOf” as groupsParameter, but the assertion does not carry that parameter. Instead I can see “Role” in the assertion.
If “Role” and its content was not what you intended to use for authorization, there should be some configuration in Keycloak to include actual groups in the assertion IIRC.