MatthewDorner / chimera

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Chimera

Chimera is an OAuth2 proxy to external OAuth providers. It works with predefined applications by adding credentials to the requests and proxying them to OAuth providers.

Chimera at Mattermost

Although there is nothing exclusive for Mattermost use case, Chimera acts as an OAuth2 proxy for some plugins to make it easier for Cloud customers to connect plugins running on their instances.

Thanks to Chimera, users can skip registration of their own OAuth2 applications on the provider side (such as GitHub or Zoom) and use applications pre-created by Mattermost company. This allows them to connect their plugins much easier ripping benefits of awesome integrations even faster 🚀

Plugins support

Current support for Chimera in Mattermost plugins.

Plugin Chimera Support Status
GitHub Plugin In Progress
GitLab Plugin In Progress
Zoom Plugin In Progress

Using Chimera on managed instance

Mattermost Cloud managed installations are preconfigured with Chimera. To use it with supported plugin enable Use Preregistered OAuth Application option in the plugin settings.

On Premise instances

It is possible to use Chimera with on-premise instances but it requires a lot configuration and is not officially supported yet.

Configuration

OAuth applications configuration

To use Chimera, it needs to be configured with pre-registered OAuth applications on provider side.

The example shows configuration with GitHub OAuth2 application:

{
  "apps": [
    {
      "identifier": "my-github-application",
      "clientID": "client-id",
      "clientSecret": "super-secret",
      "provider": "github"
    }
  ]
}

Configuring with Mattermost Instance

To configure Mattermost instance to use specific Chimera instance set Chimera URL in the following environment variable for the Mattermost server:

export MM_PLUGINSETTINGS_CHIMERAOAUTHPROXYURL=https://your-chimera.com

Mattermost Cloud managed installations are preconfigured with Chimera run and managed by Mattermost, therefor no configuration is needed.

About

License:Apache License 2.0


Languages

Language:Go 89.9%Language:Makefile 3.7%Language:CSS 2.6%Language:HTML 2.1%Language:Shell 1.0%Language:Dockerfile 0.6%