diff --git a/plugins/deadlock-extension/src/extension.ts b/plugins/deadlock-extension/src/extension.ts
index 46d36914134c5bf18ca23b7b4bd48effca6cabcd..66446abe352f896702f0f039dfe5c8d288627670 100644
--- a/plugins/deadlock-extension/src/extension.ts
+++ b/plugins/deadlock-extension/src/extension.ts
@@ -5,7 +5,7 @@ import { Uri } from 'vscode';
 const marked = require('marked');
 
 import keycloakManager from './keycloakManager';
-import { USER_CHALLENGE_PATH } from './config';
+import { USER_CHALLENGE_PATH, KEYCLOAK_CONFIG_PATH } from './config';
 
 interface UserChallengeConfig {
   paths: Record<string, string>;
@@ -38,12 +38,19 @@ function init() {
       });
   }
 
-  keycloakManager.loadKeycloakIfNecessary(() => {
-    console.log('keycloak is ready');
-    if (keycloakManager.getKeycloak() && keycloakManager.getKeycloak().token) {
-      console.log(keycloakManager.getKeycloak().token);
-    }
-  });
+  vscode.workspace
+    .openTextDocument(Uri.parse(KEYCLOAK_CONFIG_PATH))
+    .then((keycloakConfig) => {
+      console.log('config', keycloakConfig);
+      keycloakConfig = JSON.parse(keycloakConfig.getText());
+      console.log('config', keycloakConfig);
+      keycloakManager.loadKeycloakIfNecessary(keycloakConfig, () => {
+        if (keycloakManager.getKeycloak() && keycloakManager.getKeycloak().token) {
+          console.log('token', keycloakManager.getKeycloak().token);
+        }
+      });
+    });
+
 }
 
 export function activate(context: vscode.ExtensionContext) {
@@ -208,8 +215,8 @@ class DeadlockPanel {
                 and only allow scripts that have a specific nonce.
                 -->
                 <meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src ${
-                  webview.cspSource
-                } https:; script-src 'nonce-${nonce}';">
+      webview.cspSource
+      } https:; script-src 'nonce-${nonce}';">
 
                 <meta name="viewport" content="width=device-width, initial-scale=1.0">
                 <title>Deadlock</title>
diff --git a/plugins/deadlock-extension/src/keycloakManager.js b/plugins/deadlock-extension/src/keycloakManager.js
index 0d60dc06c04092bdd94ac34bf2e196854d3f33af..b6c4dbd35bc98deb862c82185523ac8c5de657c8 100644
--- a/plugins/deadlock-extension/src/keycloakManager.js
+++ b/plugins/deadlock-extension/src/keycloakManager.js
@@ -1,5 +1,4 @@
 import Keycloak from 'keycloak-js/dist/keycloak';
-import { KEYCLOAK_CONFIG_PATH } from './config';
 
 let keycloak;
 let isAuthenticated = false;
@@ -15,9 +14,9 @@ keycloakManager.resetKeycloak = () => {
     keycloak = undefined;
 };
 
-keycloakManager.loadKeycloakIfNecessary = (cb) => {
+keycloakManager.loadKeycloakIfNecessary = (config, cb) => {
     if (!keycloakManager.getKeycloak()) {
-        keycloakManager.loadKeycloak().then(() => cb());
+        keycloakManager.loadKeycloak(config).then(() => cb());
     } else {
         cb();
     }
@@ -29,8 +28,8 @@ keycloakManager.logout = () => keycloakManager.getKeycloak().logout();
 
 keycloakManager.getAvatar = () => keycloakManager.getKeycloak().tokenParsed.avatar_url;
 
-keycloakManager.loadKeycloak = () => {
-    let keycloak = Keycloak(KEYCLOAK_CONFIG_PATH);
+keycloakManager.loadKeycloak = (config) => {
+    let keycloak = Keycloak(config);
     return new Promise((resolve, reject) => {
         keycloak.init({ onLoad: 'check-sso' }).success((authenticated) => {
             if (authenticated) {