SSSD-IDP(5)

NAME
sssd-idp - Provedor IdP do SSSD

DESCRIÇÃO

Este manual descreve a configuração do provedor IdP para sssd(8). Para uma referência de sintaxe detalhada, consulte a secção “FORMATO DE FICHEIRO” do manual sssd.conf(5).

O provedor IdP é um backend usado para ligar a um provedor de identidade baseado em OAuth 2.0 e REST (IdP). Como os produtos podem ter implementação individual da REST API para procurar atributos de utilizador e grupo, pode ser preciso código dedicado, veja a opção “idp_type” para detalhes.

IdPs tipicamente não fornecem atributos POSIX como ex. Id de utilizador (UID) ou directório home. O provedor IdP do SSSD irá autogerar os atributos necessários. O algoritmo predefinido para gerar IDs de utilizador (UIDs) e IDs de grupo (GIDs) tem o objectivo de criar IDs reproduzíveis em diferentes sistemas. Um inconveniente que pode acontecer é que o algoritmo atribua o mesmo ID a diferentes objetos e apenas o primeiro requisitado via SSSD esteja disponível.

OPÇÕES DE CONFIGURAÇÃO

Consulte a secção “SECÇÕES DE DOMÍNIO” do manual sssd.conf(5) para detalhes da configuração de um domínio SSSD.

idp_type (string)
    Opção requerida que especifica o produto IdP. Atualmente são suportados Entra ID (entra_id) e 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).

    Predefinição: Não definida (Requerido)

idp_client_id (string)
    ID do cliente IdP usado pelo SSSD para autenticar utilizadores e como um cliente para procurar atributos de utilizador e grupo. Este cliente tem e oferecer autorização de dispositivo de acordo com RFC-8628 e tem de ter permissão para procurar e ler atributos de utilizador e grupo.

    Predefinição: Não definida (Requerido)

idp_client_secret (string)
    Palavra passe do cliente IdP. A palavra passe é requerida para o id_provider. Se apenas usado como auth_provider depende da configuração do lado do servidor se é requerida ou não.

    Predefinição: Não definida

idp_token_endpoint (string)
    Endpoint IdP para requisitar testemunhos de acesso.

    Predefinição: Não definida (Requerido)

idp_device_auth_endpoint (string)
    Endpoint IdP para autorização de dispositivo de acordo com RFC-8628. Isto é requerido para autenticação de utilizador.

    Predefinição: Não definida

idp_userinfo_endpoint (string)
    Endpoint de informação de utilizador do IdP para requisitar atributos de utilizador após autenticação com sucesso do utilizador. Requerido para autenticação.

    Predefinição: Não definida

idp_id_scope (string)
    Escopo requerido para procurar atributos de utilizador e grupo com a REST API. Os escopos são usados pelo servidor para determinar que atributos/reivindicações são retornados ao chamador.

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

    Predefinição: Não definida

idp_auth_scope (string)
    Escopo requerido durante a autenticação. Os escopos são usados pelo servidor para determinar que atributos/reivindicações são retornados ao chamador.

    Presentemente os testemunhos retornados durante a autenticação do utilizador não são usados para outros objetivos por isso a única reivindicação importante é o identificador de assunto 'sub' o que é usado para verificar se o utilizador autenticado é aquele que tenta fazer login. Isto poderá vir a mudar no futuro.

    Predefinição: Não definida

idp_request_timeout (inteiro)
    Tempo limite em segundos para um pedido individual ao IdP.

    Predefinido: 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.

    Predefinição: false

idmap_range_min (inteiro)
    Especifica o vínculo inferior (inclusive) da gama de IDs POSIX para usar para mapear utilizadores e grupos IdP para IDs POSIX. É o primeiro ID POSIX ID que pode ser usado para o mapeamento.

    O intervalo entre “idmap_range_min” e “idmap_range_max” irá ser dividido em gamas menores de tamanho “idmap_range_size” que serão usadas por um domínio IdP individual.

    Predefinição: 200000

idmap_range_max (inteiro)
    Especifica o vínculo superior (inclusive) da gama de IDs POSIX para usar para mapear utilizadores e grupos IdP para IDs POSIX. É o primeiro ID POSIX ID que não vai ser mais usado para o mapeamento de ID POSIX.

    Predefinição: 2000200000

idmap_range_size (inteiro)
    Especifica o número de IDs POSIX disponíveis para um único domínio IdP.

    Predefinição: 200000

EXEMPLO

    [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

VEJA TAMBÉM

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

O autor do SSSD - https://github.com/SSSD/sssd/