An Mozilla-flavoured SAML MXID mapper for Synapse
Project description
Synapse Mozilla SAML MXID Mapper
A Synapse plugin module which allows users to choose their username when they first log in.
Installation
This plugin can be installed via PyPi:
pip install matrix-synapse-saml-mozilla
Config
Add the following in your Synapse config:
saml2_config:
user_mapping_provider:
module: "matrix_synapse_saml_mozilla.SamlMappingProvider"
Also, under the HTTP client listener
, configure an additional_resource
as per
the below:
listeners:
- port: <port>
type: http
resources:
- names: [client]
additional_resources:
"/_matrix/saml2/pick_username":
module: "matrix_synapse_saml_mozilla.pick_username_resource"
Configuration Options
Synapse allows SAML mapping providers to specify custom configuration through the
saml2_config.user_mapping_provider.config
option.
Currently the following options are supported:
-
use_name_id_for_remote_uid
: if set toFalse
, we will use the SAML attribute mapped touid
to identify the remote user instead of theNameID
from the assertion.True
by default. -
bad_domain_file
: should point a file containing a list of domains (one per line); users who have an email address on any of these domains will be blocked from registration. -
bad_domain_list
: an alternative tobad_domain_file
allowing the list of bad domains to be specified inline in the config.If both
bad_domain_file
andbad_domain_list
are specified, the two lists are merged.
Implementation notes
The login flow looks something like this:
Development and Testing
This repository uses tox
to run linting and tests.
Linting
Code is linted with the flake8
tool. Run tox -e lint
to check for linting
errors in the codebase.
Tests
This repository uses unittest
to run the tests located in the tests
directory. They can be ran with tox -e tests
.
Making a release
git tag vX.Y
python3 setup.py sdist
twine upload dist/matrix-synapse-saml-mozilla-X.Y.tar.gz
git push origin vX.Y
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file matrix-synapse-saml-mozilla-0.2.6.tar.gz
.
File metadata
- Download URL: matrix-synapse-saml-mozilla-0.2.6.tar.gz
- Upload date:
- Size: 25.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 864b021e0a68b25c13d29f2c9567301b46f6eac2acd8a2af3650234fd85f089c |
|
MD5 | edc7c111bf3fdc1ef009886e08e5bcb7 |
|
BLAKE2b-256 | 87654c04d3ddc80d460e6af3c75963c5f383db8b517cd22abd0e950d698230fb |