<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: times new roman,new york,times,serif; font-size: 12pt; color: #000000'>Hi ,<div>I work on POC to use Keycloak to secure a set of microservices( java written SpringBooth&amp;gradle projects).</div><div>I use Keycloak-2.1.0.Final release installed on 3 different VMs(master running on VM1, slave1 on VM2, slave2 on VM2). <span style="font-size: 12pt;">On a 4th VM I have installed a shared (MySql) db to replace the embedded H2 db.</span></div><div><span style="font-size: 12pt;">I have configured a Keycloak Domain Mode cluster using keycloak documentation "Server Installation and Configuration Guide".</span></div><div></div><div>1. I have logged on the master keycloak server and configured my new Realm that has my microservice processes &nbsp;as clients.I have added roles,users,groups, etc., The realm configuration of the master keycloak instance &nbsp;got replicated on the slave instances ( I can see the cluster running when loging-on &nbsp;WildFly Management Interface).</div><div>2. I have added to all microservice java projects the &nbsp;keycloak securing code:&nbsp;</div><div>&nbsp; &nbsp; 2.1 Created a keycloak.json file who's content was generated my the MASTER keycloak server(Client's "Installation" utility)</div><div>&nbsp; &nbsp; 2.2 Added to the &nbsp;project's Application class a &nbsp;system property, to target the keycloak.json file generated by the MASTER keycloak &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; instance:<span style="font-size: 12pt;">System.setProperty("keycloak.configurationFile", "classpath:keycloak.json");</span></div><div>&nbsp; &nbsp; 2.3 Created a new config's package class : public class SecurityConfig extends KeycloakWebSecurityConfigurerAdapter</div><div>&nbsp; &nbsp; 2.4 &nbsp;Added to the build.gradle file keycloak spring security adapter compilation :&nbsp;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;compile group: 'org.keycloak', name:'keycloak-spring-security-adapter',version:'2.1.0.Final</div><div>&nbsp; Note. I have compared the content of the json format code generated by the Client "Installation" utility of the slave instances against master instance and, THE ONLY DIFFERENCE is the<b> "auth-server-url"</b> line (having the specific node URL address)&nbsp;</div><div>3. Now, I want to do the test of accessing particular resources of my microservice applications(additional info: I did not implemented any load-balancer in front of the keycloak cluster):&nbsp;</div><div>&nbsp; &nbsp; &nbsp;I have created a simple java program that uses a Basic Authorization &nbsp;procedure to get an access token, and then use this token to sent request messages to my microservice application and get the expected response messages.</div><div>&nbsp; &nbsp;- When I use the MASTER's instance authorization endpoint to get an access token, I get the expected response message( because, I presume, &nbsp;my microservice application attached &nbsp;keycloak.json file has HARDCODED content &nbsp;generated by the MASTER's instance &amp; containing MASTERS's authorization endpoint).</div><div>&nbsp; &nbsp; - When I use either-one SLAVE keycloak instance authorization&amp;token generation endpoint to generate an access token, my request &nbsp;fails with a 401 error:<span style="font-size: 12pt;">"Unable to authenticate bearer token"</span></div><div>I believe or feel, I use a wrong approach to solve my problem. My microservice applications (at this time) &nbsp;DO NOT KNOW anything, whether I use a domain mode cluster &nbsp;or, a simple standalone keycloak instanceattached keycloak.json file has ONLY one keycloak instance (<span style="font-size: 12pt;">MASTER's</span><span style="font-size: 12pt;">&nbsp;)</span><span style="font-size: 12pt;">&nbsp;&nbsp;"auth-server-url" &nbsp;info ).</span></div><div>Here, I need your help to enlighten me. Is there another approach to handle my problem? It should, otherwise why writing about Domain Mode in Keycloak Release documentation. Unfortunately, I have not found (yet ) &nbsp;detailed &nbsp;info on how to configure a Keycloak Domain Cluster and how to do test simulations with it. I would appreciate any help on this issue.</div><div>Thanks,</div><div>Ioan &nbsp;</div><div>&nbsp;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div></div></body></html>