sbose/sssd-idp

Project ID: 136413

Description

This repository contains the current state of the development of the direct integration of SSSD with an external IdP. Currently Keycloak and Entra ID are supported.

You can find a short video with a demo at https://sbose.fedorapeople.org/sssd-idp-demo/sssd-idp-demo.mp4.

The code is based on the git trees:

Feel free to leave comments, questions and suggestions on github.

Installation Instructions

After installing the packages form this repository, especially the sssd-idp package, create a sssd.conf file like e.g.:

[sssd] config_file_version = 2 services = nss, pam domains = YOU.onmicrosoft.com, keycloak [domain/YOU.onmicrosoft.com] id_provider = idp auto_private_groups = true use_fully_qualified_names = true debug_level = 9 idp_client_id = UUID_of_YOUR_Entra_ID_client idp_client_id = Password_of_YOUR_Entra_ID_client idp_token_endpoint = https://login.microsoftonline.com/YOUR_Entra_ID_tennant_UUID/oauth2/v2.0/token idp_device_auth_endpoint = https://login.microsoftonline.com/YOUR_Entra_ID_tennant_UUID/oauth2/v2.0/devicecode idp_userinfo_endpoint = https://graph.microsoft.com/v1.0/me idp_id_scope = https%3A%2F%2Fgraph.microsoft.com%2F.default idp_auth_scope = openid profile email [domain/keycloak] idp_type = keycloak:https://master.keycloak.test:8443/auth/admin/realms/master/ id_provider = idp auto_private_groups = true use_fully_qualified_names = true debug_level = 9 idp_client_id = YourKeycloakClient idp_client_secret = YourKeycloakClientPassword idp_token_endpoint = https://master.keycloak.test:8443/auth/realms/master/protocol/openid-connect/token idp_userinfo_endpoint = https://master.keycloak.test:8443/auth/realms/master/protocol/openid-connect/userinfo idp_device_auth_endpoint = https://master.keycloak.test:8443/auth/realms/master/protocol/openid-connect/auth/device idp_id_scope = profile idp_auth_scope = openid profile email [nss] debug_level = 9 default_shell = /bin/bash fallback_homedir = /home/%f

Please note that the IdP clients must have the permission to read user and group attributes.

Active Releases

The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).

Release Architectures Repo Download
Centos-stream 10 x86_64 (686)* Centos-stream 10 (17 downloads)
Centos-stream 8 x86_64 (9)* Centos-stream 8 (18 downloads)
Centos-stream 9 x86_64 (715)* Centos-stream 9 (15 downloads)
EPEL 8 x86_64 (9)* EPEL 8 (21 downloads)
EPEL 9 x86_64 (819)* EPEL 9 (30 downloads)
Fedora 39 aarch64 (672)*, s390x (671)*, x86_64 (675)* Fedora 39 (15 downloads)
Fedora 40 aarch64 (671)*, ppc64le (675)*, s390x (671)*, x86_64 (1148)* Fedora 40 (31 downloads)
Fedora 41 aarch64 (124)*, ppc64le (124)*, s390x (124)*, x86_64 (124)* Fedora 41 (9 downloads)
Fedora eln x86_64 (9)* Fedora eln (15 downloads)
Fedora rawhide aarch64 (685)*, ppc64le (683)*, s390x (704)*, x86_64 (762)* Fedora rawhide (21 downloads)

* Total number of downloaded packages.