É possível durante a fase de autenticação de pam_ldap
mapear um atributo LDAP arbitrário do registro do usuário para o ambiente do usuário resultante?
Os detalhes da minha situação, no caso de você ver outra abordagem para o problema, é que eu escrevi um subsistema SFTP personalizado que mapeia os comandos SFTP para um conjunto Ceph / Rados. Eu quero que este subsistema use uma chave associada ao usuário autenticado para se conectar ao cluster Ceph (para controlar o acesso ao pool, etc.)
Eu já estou autenticando usuários via LDAP para a conexão SSH / SFTP e acredito que posso bloquear o acesso de leitura ao seu atributo de chave Ceph para somente root e self. Eu preferiria não fazer outra pesquisa LDAP usando uma conta de ligação LDAP compartilhada, se possível.
Atualização:
Embora eu não tenha encontrado uma maneira de fazer exatamente o que estou pedindo aqui, eu tenho algo "working" que usa pam_exec.so
session module (como root) para puxar o atributo ldap e gravá-lo em /run/users/<UID>/<filename>.<SESSION_ID>
(por chmod 400
, chown <UID>:root
). Em seguida, o subsistema personalizado (como usuário autenticado) lê e remove esse arquivo.
Embora isso funcione, existem preocupações de segurança consideráveis?