website/docs: add matrix docs

closes #1477

Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
Jens Langhammer 2021-10-18 21:09:26 +02:00
parent 72c0da2bdf
commit c3bd509eb8
2 changed files with 51 additions and 0 deletions

View File

@ -0,0 +1,50 @@
---
title: Matrix Synapse
---
## What is Matrix Synapse
From https://matrix.org/
:::note
Matrix is an open source project that publishes the Matrix open standard for secure, decentralised, real-time communication, and its Apache licensed
reference implementations.
:::
## Preparation
The following placeholders will be used:
- `matrix.company` is the FQDN of the MinIO install.
- `authentik.company` is the FQDN of the authentik install.
Create an application in authentik. Create an OAuth2/OpenID provider with the following parameters:
- Client Type: `Confidential`
- JWT Algorithm: `RS256`
- Scopes: OpenID, Email and Profile
- RSA Key: Select any available key
- Redirect URIs: `https://matrix.company/_synapse/client/oidc/callback`
Note the Client ID and Client Secret values. Create an application, using the provider you've created above. Note the slug of the application you've created.
## Matrix
Add the following block to your Matrix config
```yaml
oidc_providers:
- idp_id: authentik
idp_name: authentik
discover: true
issuer: "https://authentik.company/application/o/app-slug/"
client_id: "*client id*"
client_secret: "*client secret*"
scopes:
- "openid"
- "profile"
user_mapping_provider:
config:
localpart_template: "{{ '{{ user.name }}' }}"
display_name_template: "{{ '{{ user.name|capitalize }}' }}"
```

View File

@ -87,6 +87,7 @@ module.exports = {
"integrations/services/grafana/index", "integrations/services/grafana/index",
"integrations/services/harbor/index", "integrations/services/harbor/index",
"integrations/services/home-assistant/index", "integrations/services/home-assistant/index",
"integrations/services/matrix-synapse/index",
"integrations/services/minio/index", "integrations/services/minio/index",
"integrations/services/nextcloud/index", "integrations/services/nextcloud/index",
"integrations/services/portainer/index", "integrations/services/portainer/index",