Keycloak integration

Let's use the ControllerAs syntax so we know what controller values come from.