
Na seguinte configuração do PAM para o arquivo/etc/pam.d/system-auth
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
account required pam_unix.so
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account required pam_permit.so
Se a primeira seção ( auth
) for bem-sucedida, a segunda seção ( account
) será chamada e verificada? E ao contrário, se auth
a seção falhar, será account
chamada?
Em outro cenário, para enfatizarminha principal dificuldade, se misturássemos auth
eaccount
, tomemos o seguinte exemplo:
auth sufficient pam_unix.so nullok try_first_pass
account required pam_unix.so
auth requisite pam_succeed_if.so uid >= 500 quiet
account sufficient pam_succeed_if.so uid < 500 quiet
Como o PAM se comportará exatamente? Estou confuso sobre isso e será muito útil para mim se alguém puder explicar isso para mim.
Responder1
O PAM não mistura autenticação e tipo de conta, mas simempilha-os de forma independentede acordo com o tipo de gestão. O valor de retorno de uma pilha depende da ordem das opções e dos sinalizadores de controle, cf.https://docs.oracle.com/cd/E19253-01/816-4557/pam-15/index.html
O que é feito com o resultado depende um pouco da aplicação. Normalmente, um programa como login ou su valida uma conta somente após uma autenticação bem-sucedida.