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).

    Dependendo d produto IdP opções adicionais especificas da plataforma podem ter o nome separado por dois-pontos (:). Ex. para Keycloak o URI base para o utilizador e grupo REST API tem de ser fornecido. Para Entra ID isto não é necessário porque é um endpoint genérico para todos os tenants.

    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.

    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

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.

    The interval between “idmap_range_min” and “idmap_range_max” will be split into smaller ranges of size “idmap_range_size” which will be used by an individual IdP domain.

    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%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

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/