Skip to content

anthinkingcoder/egg-keycloak

Repository files navigation

egg-keycloak

NPM version build status Test coverage David deps Known Vulnerabilities npm download

Install

$ npm i egg-keycloak --save

Usage

// {app_root}/config/plugin.js
exports.keycloak = {
  enable: true,
  package: 'egg-keycloak'
};

// application.js
const KEY_CLOAK = Symbol('Application#keycloak')
const Keycloak = require('@anthinkingcoder/keycloak-koa-connect')

module.exports = {
  get keycloak() {
    if (!this[KEY_CLOAK]) {
      this[KEY_CLOAK] = new Keycloak(this.config.keycloak.base, this.config.keycloak.kcConfig)
    }
    return this[KEY_CLOAK]
  }

Configuration

// {app_root}/config/config.default.js
exports.keycloak = {
 middleware: {
    logout: '/logout',
    admin: '/',
  },
  base: {
    store: true,
    cookies: false,
    idpHint: null,
    scope: null
  },
  kcConfig: { //keycloak.json
    clientId: '',
    serverUrl: '',
    realm: '',
    bearerOnly: false
  }
};

Support all configurations in keycloak-koa-connect. see config/config.default.js for more detail.

Example

Questions & Suggestions

Please open an issue here.

License

MIT

About

egg plugin for keycloak

Resources

License

Stars

Watchers

Forks

Packages

No packages published