SSSD-IDP(5) | File Formats and Conventions | SSSD-IDP(5) |
NAME
sssd-idp - SSSD IdP provider
DESCRIPTION
This manual page describes the configuration of the IdP provider for sssd(8). For a detailed syntax reference, refer to the “FILE FORMAT” section of the sssd.conf(5) manual page.
The IdP provider is a back end used to connect to an OAuth 2.0 and REST based identity provider (IdP). Since products might have individual implementation of the REST API for looking up user and group attributes dedicated code might be required, see the “idp_type” option for details.
IdPs typically do not provide POSIX attributes like e.g. user Id (UID) or home directory. SSSD's IdP provider will autogenerate the needed attributes. The default algorithm to generate user IDs (UIDs) and group IDs (GIDs) aims to create reproducible IDs on different systems. As a drawback it might happen that the algorithm assigns the same ID to different objects and only the first one requested via SSSD will be available.
CONFIGURATION OPTIONS
Refer to the section “DOMAIN SECTIONS” of the sssd.conf(5) manual page for details on the configuration of an SSSD domain.
idp_type (string)
Depending on the IdP product additional platform specific options might follow the name separated by a colon (:). E.g. for Keycloak the base URI for the user and group REST API must be given. For Entra ID this is not needed because there is a generic endpoint for all tenants.
Default: Not set (Required)
idp_client_id (string)
Default: Not set (Required)
idp_client_secret (string)
Default: Not set
idp_token_endpoint (string)
Default: Not set (Required)
idp_device_auth_endpoint (string)
Default: Not set
idp_userinfo_endpoint (string)
Default: Not set
idp_id_scope (string)
Default: Not set
idp_auth_scope (string)
Currently the tokens returned during user authentication are not used for other purposes hence the only important claim is the subject identifier 'sub' which is used to check if the authenticated user is the one trying to log in. This might change in future.
Default: Not set
idp_request_timeout (integer)
Default: 10
idmap_range_min (integer)
The interval between “idmap_range_min” and “idmap_range_max” will be split into smaller rages of size “idmap_range_size” which will be used by an individual IdP domain.
Default: 200000
idmap_range_max (integer)
Default: 2000200000
idmap_range_size (integer)
Default: 200000
EXAMPLE
[domain/entra_id] id_provider = idp idp_type = entra_id idp_client_id = 12345678-abcd-0101-efef-ba9876543210 idp_client_secret = YOUR-CLIENT-SCERET idp_token_endpoint = https://login.microsoftonline.com/TENNANT-ID/oauth2/v2.0/token idp_userinfo_endpoint = https://graph.microsoft.com/v1.0/me idp_device_auth_endpoint = https://login.microsoftonline.com/TENNANT-ID/oauth2/v2.0/devicecode 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 idp_client_id = myclient idp_client_secret = YOUR-CLIENT-SCERET 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
SEE ALSO
sssd(8), sssd.conf(5), sssd-ldap(5), sssd-ldap-attributes(5), sssd-krb5(5), sssd-simple(5), sssd-ipa(5), sssd-ad(5), sssd-idp(5), sssd-sudo(5), sssd-session-recording(5), sss_cache(8), sss_debuglevel(8), sss_obfuscate(8), sss_seed(8), sssd_krb5_locator_plugin(8), sss_ssh_authorizedkeys(1), sss_ssh_knownhosts(1), sssd-ifp(5), pam_sss(8). sss_rpcidmapd(5)
AUTHORS
The SSSD upstream - https://github.com/SSSD/sssd/
06/15/2025 | SSSD |