5 releases (breaking)

0.11.0 Sep 4, 2024
0.10.0 Aug 19, 2024
0.9.0 May 2, 2024
0.8.0 May 2, 2024
0.7.0 Dec 7, 2023

#259 in Authentication

Download history 292/week @ 2024-12-21 139/week @ 2024-12-28 753/week @ 2025-01-04 658/week @ 2025-01-11 574/week @ 2025-01-18 755/week @ 2025-01-25 1350/week @ 2025-02-01 791/week @ 2025-02-08 1169/week @ 2025-02-15 813/week @ 2025-02-22 940/week @ 2025-03-01 706/week @ 2025-03-08 262/week @ 2025-03-15 276/week @ 2025-03-22 368/week @ 2025-03-29 78/week @ 2025-04-05

1,076 downloads per month
Used in 4 crates

Apache-2.0

84KB
2K SLoC

OAuth2.0 + OpenID Connect Provider for Matrix Homeservers

matrix-authentication-service is now actively maintained at element-hq/matrix-authentication-service

MAS (Matrix Authentication Service) is an OAuth 2.0 and OpenID Provider server for Matrix developed from 2021 through 2024 as part of the Matrix.org Foundation. The Matrix.org Foundation is not able to resource maintenance of matrix-authentication-service and it continues to be developed by Element.

See The future of Synapse and Dendrite blog post for more information.


It has been created to support the migration of Matrix to an OpenID Connect (OIDC) based authentication layer as per MSC3861.

See the Documentation for information on installation and use.

You can learn more about Matrix and OIDC at areweoidcyet.com.

Delegated OIDC architecture with MAS overview

Features

  • Supported homeservers
    • ✅ Synapse
  • Authentication methods:
  • Migration support
    • ✅ Compatibility layer for legacy Matrix authentication
    • ✅ Advisor on migration readiness
    • ✅ Import users from Synapse
    • ✅ Import password hashes from Synapse
    • ✅ Import of external subject IDs for upstream identity providers from Synapse

Upstream Identity Providers

MAS is known to work with the following upstream IdPs via OIDC:


lib.rs:

Values from IANA registries, generated by the mas-iana-codegen crate

Dependencies

~4.5–6MB
~104K SLoC