Roundcube plugin for Single-sign-on (SSO) login to external mailaccount management.

1.0.2 2021-02-01 11:23 UTC

This package is auto-updated.

Last update: 2024-10-29 06:19:30 UTC


README

Requirements

I only test this plugin with the following environments. Other setup may work with luck.

  • PHP: >= 7.4
  • Roundcube: 1.4.x

Install

Install this Roundcube plugin with Composer (recommended). Go to your ROUNDCUBE_HOME (i.e., the root directory of your Roundcube installation) and run:

$ composer require onlime-roundcube/jwt-sso --update-no-dev
Do you want to activate the plugin jwt_sso? [Y|n]

Then change at least the following in plugins/jwt_sso/config.in.php:

$config['jwt_sso_url'] = 'https://my.example.com/auth/sso-roundcube?token=%s';
$config['jwt_sso_key'] = '********************************';

NOTE: The base64 encoded JWT secret key can be generated with e.g. openssl:

$ openssl rand -base64 32

If you did not select to activate the plugin directly from composer require, manually add jwt_sso to the plugins in your Roundcube config config/config.inc.php:

$config['plugins'] = [
    // some other plugins...
    'jwt_sso', // <-- add this line
];

You can now integrate the SSO link in e.g. skins/elastic/templates/includes/menu.html:

<a class="button-settings" id="rcmbtn-sso" href="?_action=sso" target="_blank">
    <span class="button-inner">Account</span>
</a>

TODO

  • [ ] Use <roundcube:button ..> instead of plain HTML in menu template
  • [ ] Could the account button be directly added to taskmenu by this plugin?

License

This plugin is released under the GNU General Public License Version 3+.

About

The project is hosted on GitLab. Please use the project's issue tracker if you find bugs.

onlime-roundcube/jwt-sso was written by Philip Iezzi for Onlime GmbH.