 --- src/app/index.module.ts
 +++ src/app/index.module.ts
-@@ -31,13 +31,37 @@
+@@ -31,13 +31,36 @@ import {ProxySettingsConfig} from './proxy/proxy-settings.constant';
+ import {WorkspacesConfig} from './workspaces/workspaces-config';
  import {StacksConfig} from './stacks/stacks-config';
  import {DemoComponentsCtrl} from './demo-components/demo-components.controller';
- import {DocsConfig} from './documentation/docs-config';
--
 +import * as Keycloak from '../components/keycloak/keycloak';
-+
-+
+ 
 +let keycloakConfig = {
 +  "url": "https://sso.openshift.io/auth",
 +  "realm": "fabric8",
 +  "clientId": "openshiftio-public",
 +};
-
+ 
  // init module
  let initModule = angular.module('userDashboard', ['ngAnimate', 'ngCookies', 'ngTouch', 'ngSanitize', 'ngResource', 'ngRoute',
    'angular-websocket', 'ui.bootstrap', 'ui.codemirror', 'ngMaterial', 'ngMessages', 'angularMoment', 'angular.filter',
    'ngDropdowns', 'ngLodash', 'angularCharts', 'ngClipboard', 'uuid4', 'angularFileUpload']);
-
+ 
 +angular.element(document).ready(() => {
 +  console.log('running keycloak init sequence');
 +

+initModule.factory('keycloak', $window => {
+  return $window._keycloak;
+});

 // add a global resolve flag on all routes (user needs to be resolved first)
 initModule.config(['$routeProvider', ($routeProvider) => {
@@ -54,7 +78,6 @@
           deferred.reject(error);
         });
       }
-
       return deferred.promise;
     }];

@@ -65,6 +88,7 @@
     route.resolve || (route.resolve = {});
     route.resolve.app = ['$q', 'chePreferences', ($q, chePreferences) => {
       let deferred = $q.defer();
+
       if (chePreferences.getPreferences()) {
         deferred.resolve();
       } else {
@@ -74,9 +98,9 @@
           deferred.reject(error);
         });
       }
-
       return deferred.promise;
     }];
+
     return $routeProvider.otherwise(route);
   };

@@ -110,12 +134,11 @@
 /**
  * Setup route redirect module
  */
-initModule.run(['$rootScope', '$location', '$routeParams', 'routingRedirect', '$timeout', 'ideIFrameSvc', 'cheIdeFetcher', 'routeHistory', 'cheUIElementsInjectorService', 'workspaceDetailsService',
+initModule.run(['$rootScope', '$location', '$routeParams', 'routingRedirect', '$timeout','ideIFrameSvc', 'cheIdeFetcher', 'routeHistory', 'cheUIElementsInjectorService', 'workspaceDetailsService',
   ($rootScope, $location, $routeParams, routingRedirect, $timeout, ideIFrameSvc, cheIdeFetcher, routeHistory, cheUIElementsInjectorService, workspaceDetailsService) => {
     $rootScope.hideLoader = false;
     $rootScope.waitingLoaded = false;
     $rootScope.showIDE = false;
-
     workspaceDetailsService.addPage('Projects', '<workspace-details-projects></workspace-details-projects>', 'icon-ic_inbox_24px');
     workspaceDetailsService.addPage('SSH', '<workspace-details-ssh></workspace-details-ssh>', 'icon-ic_vpn_key_24px');

@@ -166,6 +189,43 @@
   }]);


+initModule.factory('KeyCloakTokenInterceptor', ($q, keycloak) => {
+  return {
+    request: (config) => {

+
+  }
+});
 
 // add interceptors
 initModule.factory('ETagInterceptor', ($window, $cookies, $q) => {
@@ -355,6 +414,7 @@ initModule.constant('userDashboardConfig', {
 });
 
 initModule.config(['$routeProvider', '$locationProvider', '$httpProvider', ($routeProvider, $locationProvider, $httpProvider) => {
+  $httpProvider.interceptors.push('KeyCloakTokenInterceptor');
   // add the ETag interceptor for Che API
   $httpProvider.interceptors.push('ETagInterceptor');
 }]);
