Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Commit 452b009

Browse files
authored
Documentation using Shibboleth with OIDC Plugin for SSO. (#15112)
1 parent adac949 commit 452b009

File tree

2 files changed

+42
-0
lines changed

2 files changed

+42
-0
lines changed

changelog.d/15112.doc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Document using [Shibboleth](https://www.shibboleth.net/) as an OpenID Provider.

docs/openid.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -590,6 +590,47 @@ oidc_providers:
590590

591591
Note that the fields `client_id` and `client_secret` are taken from the CURL response above.
592592

593+
### Shibboleth with OIDC Plugin
594+
595+
[Shibboleth](https://www.shibboleth.net/) is an open Standard IdP solution widely used by Universities.
596+
597+
1. Shibboleth needs the [OIDC Plugin](https://shibboleth.atlassian.net/wiki/spaces/IDPPLUGINS/pages/1376878976/OIDC+OP) installed and working correctly.
598+
2. Create a new config on the IdP Side, ensure that the `client_id` and `client_secret`
599+
are randomly generated data.
600+
```json
601+
{
602+
"client_id": "SOME-CLIENT-ID",
603+
"client_secret": "SOME-SUPER-SECRET-SECRET",
604+
"response_types": ["code"],
605+
"grant_types": ["authorization_code"],
606+
"scope": "openid profile email",
607+
"redirect_uris": ["https://[synapse public baseurl]/_synapse/client/oidc/callback"]
608+
}
609+
```
610+
611+
Synapse config:
612+
613+
```yaml
614+
oidc_providers:
615+
# Shibboleth IDP
616+
#
617+
- idp_id: shibboleth
618+
idp_name: "Shibboleth Login"
619+
discover: true
620+
issuer: "https://YOUR-IDP-URL.TLD"
621+
client_id: "YOUR_CLIENT_ID"
622+
client_secret: "YOUR-CLIENT-SECRECT-FROM-YOUR-IDP"
623+
scopes: ["openid", "profile", "email"]
624+
allow_existing_users: true
625+
user_profile_method: "userinfo_endpoint"
626+
user_mapping_provider:
627+
config:
628+
subject_claim: "sub"
629+
localpart_template: "{{ user.sub.split('@')[0] }}"
630+
display_name_template: "{{ user.name }}"
631+
email_template: "{{ user.email }}"
632+
```
633+
593634
### Twitch
594635

595636
1. Setup a developer account on [Twitch](https://dev.twitch.tv/)

0 commit comments

Comments
 (0)