SSSD-IDP(5)

NAME
sssd-idp - Поставщик данных IdP SSSD

ОПИСАНИЕ

На этой справочной странице представлено описание настройки поставщика данных IdP для sssd(8). Подробные сведения о синтаксисе доступны в разделе “ФОРМАТ ФАЙЛА” справочной страницы sssd.conf(5).

Провайдер IdP — это бэкэнд, используемый для подключения к поставщику данных (IdP), основанному на OAuth 2.0 и REST. Поскольку различные продукты могут иметь индивидуальную реализацию REST API для получения атрибутов пользователей и групп, может потребоваться специализированный код. Подробности см. в описании параметра “idp_type”.

IdP обычно не предоставляют атрибуты POSIX, например, идентификатор пользователя (UID) или домашний каталог. Провайдер IdP SSSD автоматически сгенерирует необходимые атрибуты. Алгоритм по умолчанию для генерации идентификаторов пользователей (UID) и групповых идентификаторов (GID) направлен на создание воспроизводимых идентификаторов в разных системах. Недостатком может стать то, что алгоритм назначает один и тот же идентификатор разным объектам, и только первый, запрошенный через SSSD, будет доступен.

ПАРАМЕТРЫ КОНФИГУРАЦИИ

Сведения о конфигурации домена SSSD доступны в разделе “РАЗДЕЛЫ ДОМЕНА” справочной страницы sssd.conf(5).

idp_type (строка)
    Обязательная опция, которая указывает продукт IdP. В настоящее время поддерживаются Entra ID (entra_id) и Keycloak (keycloak).

    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 the base URI for the Microsoft Graph API can be given to use sovereign or government cloud endpoints instead of the default (https://graph.microsoft.com/v1.0). E.g. “entra_id:https://graph.microsoft.us/v1.0” for the US government cloud (GCC High).

    По умолчанию: не задано (обязательно)

idp_client_id (строка)
    Идентификатор клиента IdP, используемый SSSD для аутентификации пользователей и в качестве клиента для поиска атрибутов пользователей и групп. Этот клиент должен предлагать авторизацию устройства в соответствии с RFC-8628 и иметь разрешения на поиск и чтение атрибутов пользователей и групп.

    По умолчанию: не задано (обязательно)

idp_client_secret (строка)
    Пароль клиента IdP. Пароль требуется при использовании id_provider. Если используется только как auth_provider, необходимость в пароле зависит от конфигурации сервера на стороне сервера.

    По умолчанию: не задано

idp_token_endpoint (строка)
    Конечная точка IdP для запроса токенов доступа.

    По умолчанию: не задано (обязательно)

idp_device_auth_endpoint (строка)
    Конечная точка IdP для авторизации устройства согласно RFC-8628. Требуется для аутентификации пользователя.

    По умолчанию: не задано

idp_userinfo_endpoint (строка)
    Конечная точка IdP userinfo для запроса атрибутов пользователя после успешной аутентификации пользователя. Требуется для аутентификации.

    По умолчанию: не задано

idp_id_scope (строка)
    Область, необходимая для поиска атрибутов пользователей и групп с помощью REST API. Области используются сервером для определения того, какие атрибуты/инструкции следует возвращать стороне, со стороны которой произошел вызов.

    Note: In previous versions of SSSD, this option was expected to already be URL-encoded.

    По умолчанию: не задано

idp_auth_scope (строка)
    Область, требуемая во время аутентификации. Область используется сервером для определения того, какие атрибуты/инструкции будут возвращены процессу, которым был совершен вызов.

    В настоящее время токены, возвращаемые во время аутентификации пользователя, не используются в других целях, поэтому единственной важной инструкцией является идентификатор темы «sub», используемый для проверки того, является ли аутентифицированный пользователь именно тем, кто пытается войти в систему. Это может измениться в будущих версиях.

    По умолчанию: не задано

idp_request_timeout (целое число)
    Тайм-аут в секундах для отдельного запроса к IdP.

    По умолчанию: 10

idp_auto_refresh (boolean)
    Refresh tokens automatically, after they have reached about half their lifetime.

    Note: Scheduled token refreshes are not preserved across restarts of SSSD.

    По умолчанию: false

idmap_range_min (целое число)
    Указывает нижнюю (включительно) границу диапазона POSIX-идентификаторов, используемых для сопоставления пользователей и групп поставщика удостоверений (IdP) с POSIX-идентификаторами. Это первый POSIX-идентификатор, который может быть использован для сопоставления.

    Интервал между “idmap_range_min” и “idmap_range_max” будет разделен на меньшие диапазоны размером “idmap_range_size”, которые будут использоваться отдельным доменом IdP.

    По умолчанию: 200000

idmap_range_max (целое число)
    Указывает верхнюю (исключительно) границу диапазона POSIX-идентификаторов, используемых для сопоставления пользователей и групп поставщика удостоверений (IdP) с POSIX-идентификаторами. Это первый POSIX-идентификатор, который больше не будет использоваться для сопоставления.

    По умолчанию: 2000200000

idmap_range_size (целое число)
    Указывает количество POSIX-идентификаторов, доступных для одного домена IdP.

    По умолчанию: 200000

ПРИМЕР

    [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://graph.microsoft.com/.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

СМ. ТАКЖЕ

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

Восходящий источник («апстрим») SSSD — https://github.com/SSSD/sssd/