Módulo de autenticação plugável - Pluggable authentication module
Um módulo de autenticação conectável ( PAM ) é um mecanismo para integrar vários esquemas de autenticação de baixo nível em uma interface de programação de aplicativo (API) de alto nível . O PAM permite que programas que dependem de autenticação sejam gravados independentemente do esquema de autenticação subjacente. Ele foi proposto pela primeira vez pela Sun Microsystems em uma Solicitação de Comentários (RFC) 86.0 da Open Software Foundation, datada de outubro de 1995. Foi adotado como a estrutura de autenticação do Common Desktop Environment . Como uma infraestrutura autônoma de código aberto , o PAM apareceu pela primeira vez no Red Hat Linux 3.0.4 em agosto de 1996 no projeto Linux PAM . O PAM é atualmente compatível com o sistema operacional AIX , DragonFly BSD , FreeBSD , HP-UX , Linux , macOS , NetBSD e Solaris .
Como não existe um padrão central de comportamento do PAM, houve uma tentativa posterior de padronizar o PAM como parte do processo de padronização do X / Open UNIX, resultando no padrão X / Open Single Sign-on ( XSSO ). Este padrão não foi ratificado, mas o rascunho do padrão serviu como um ponto de referência para implementações posteriores do PAM (por exemplo, OpenPAM ).
Críticas
Como a maioria das implementações de PAM não faz interface com clientes remotos, o PAM, por si só, não pode implementar Kerberos , o tipo mais comum de SSO usado em ambientes Unix. Isso levou à incorporação do SSO como a parte de "autenticação primária" do suposto padrão XSSO e ao advento de tecnologias como SPNEGO e SASL . Essa falta de funcionalidade também é o motivo pelo qual o SSH faz sua própria negociação de mecanismo de autenticação.
Na maioria das implementações de PAM, pam_krb5 busca apenas tickets de concessão de tíquetes , o que envolve solicitar ao usuário as credenciais, e isso só é usado para o login inicial em um ambiente SSO. Para buscar um tíquete de serviço para um determinado aplicativo e não solicitar que o usuário insira as credenciais novamente, esse aplicativo deve ser especificamente codificado para oferecer suporte ao Kerberos. Isso ocorre porque o próprio pam_krb5 não pode obter tíquetes de serviço, embora existam versões do PAM-KRB5 que estão tentando contornar o problema.
Veja também
- Implementações:
- Gerenciamento de identidade - o tópico geral
- Switch de serviço de nomes - gerencia bancos de dados de usuários
- Daemon de serviços de segurança do sistema - implementação de SSO baseada em PAM e NSS
Referências
links externos
Especificações:
Guias:
- PAM e controle de senha na Wayback Machine (arquivado em 19 de agosto de 2013)
- Módulos de autenticação plugáveis para Linux
- Aproveitando ao máximo os módulos de autenticação conectáveis (PAM)
- Administração do Oracle Solaris: Serviços de segurança: usando PAM