docs/content/integration/openid-connect/clients/mattermost/index.md
{{% oidc-common %}}
This example makes the following assumptions:
https://mattermost.{{< sitevar name="domain" nojs="example.com" >}}/https://{{< sitevar name="subdomain-authelia" nojs="auth" >}}.{{< sitevar name="domain" nojs="example.com" >}}/mattermostinsecure_secretSome of the values presented in this guide can automatically be replaced with documentation variables.
{{< sitevar-preferences >}}
The following YAML configuration is an example Authelia client configuration for use with Mattermost which will operate with the application example:
identity_providers:
oidc:
## The other portions of the mandatory OpenID Connect 1.0 configuration go here.
## See: https://www.authelia.com/c/oidc
claims_policies:
mattermost:
custom_claims:
username:
name: 'username'
attribute: 'username'
scopes:
mattermost:
claims:
- 'username'
clients:
- client_id: 'mattermost'
client_name: 'Mattermost'
client_secret: '$pbkdf2-sha512$310000$c8p78n7pUMln0jzvd4aK4Q$JNRBzwAo0ek5qKn50cFzzvE9RXV88h1wJn5KGiHrD0YKtZaR/nCb2CJPOsKaPK0hjf.9yHxzQGZziziccp6Yng' # The digest of 'insecure_secret'.
public: false
authorization_policy: 'two_factor'
claims_policy: 'mattermost'
require_pkce: false
pkce_challenge_method: ''
redirect_uris:
- 'https://mattermost.{{< sitevar name="domain" nojs="example.com" >}}/signup/gitlab/complete'
scopes:
- 'openid'
- 'mattermost'
response_types:
- 'code'
grant_types:
- 'authorization_code'
access_token_signed_response_alg: 'none'
userinfo_signed_response_alg: 'none'
token_endpoint_auth_method: 'client_secret_post'
Before configuring or using OpenID Connect 1.0 with Mattermost you must ensure the openid extension is installed.
To configure Mattermost there is one method, using the Configuration File.
To configure Mattermost to utilize Authelia as an OpenID Connect 1.0 Provider, use the following configuration:
{
"GitLabSettings": {
"Enable": true,
"Id": "mattermost",
"Secret": "insecure_secret",
"Scope": "openid mattermost",
"DiscoveryEndpoint": "https://{{< sitevar name="subdomain-authelia" nojs="auth" >}}.{{< sitevar name="domain" nojs="example.com" >}}/.well-known/openid-configuration",
"ButtonText": "Log in with Authelia",
"ButtonColor": "#000000"
}
}