Autenticação Postgres no LDAP com mapeamento de nome de usuário
27/02/2013
0
Olá pessoal, tudo bem?
Estou com um problema que está me tirando o sono. Espero que alguém tenha alguma idéia.
O ambiente:
- Possuo uma base de usuários cujos nomes são os números do CPF tipo 11111111111
- O Postgres autentica perfeitamente esses usuários no LDAP
- Possuo uma restrição de que minha aplicação não pode ter usuários iniciados por números
Pensei então em criar os usuários no Postgres adicionando a letra "a" no começo do CPF ficando assim: a11111111111.
O problema é que não estou encontrando uma solução para fazer esses usuários do Postgres serem mapeados para os usuários do LDAP sem a letra "a".
Tentei usar o pg_ident.conf sem sucesso.
Abaixo o conteúdo do pg_hba.conf:
host all all 10.10.10.0/24 ldap "ldap://127.0.0.1/basedn;uid=;,cn=usuarios,ou=ldapconfig,dc=dominio,dc=com,dc=br" host all 11111111111 10.10.10.0/24 ident map=test
Conteúdo do pg_ident.conf:
test 11111111111 a11111111111
Com essa configuração o log é o seguinte:
2013-02-26 12:22:42 BRST FATAL: role "11111111111" does not exist
Quando eu inverto as linhas do pg_hba.conf aparece isso no log:
2013-02-26 12:25:40 BRST FATAL: Ident authentication failed for user "11111111111"
Pode ser que haja alguma maneira de fazer esse mapeamento usando PAM, REGEX nos arquivos de configuração ou outro meio, mas não consigo imaginar.
Vocês acham que seria possível fazer esse mapeamento?
Abraços
Alexandre
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)