Autenticação Postfix SASL via Dovecot - Posso usar o nome de login SASL em minhas consultas sql postfix?

Autenticação Postfix SASL via Dovecot - Posso usar o nome de login SASL em minhas consultas sql postfix?

Eu tenho um servidor de e-mail com postfixe dovecotrodando mysqlno Debian buster.

Tudo funciona bem até agora, mas eu gostaria de configurar um cenário em que o nome de login para autenticação SASL seja diferente da parte do usuário do domínio do destinatário.

Exemplo:

Login name used for SASL auth: myusername
Sender email address: [email protected]

A autenticação com dovecot funciona bem, pois tenho o nome de login disponível como variável no dovecot.

Mas antes que o postfix realmente envie o e-mail, gostaria de verificar se o endereço do remetente realmente pertence ao usuário que efetuou login.smtpd_sender_login_mapsopção para o serviço de envio em master.cf, apontando para uma tabela mysql.

  -o smtpd_sender_login_maps=proxy:mysql:/etc/postfix/mysql/sender-login-maps.cf

De acordo com o manual de tabela mysql do postfix (http://www.postfix.org/mysql_table.5.html), as únicas variáveis ​​disponíveis são %s, %u, %d - todas relacionadas ao endereço do remetente, ou seja:

%s = [email protected]
%u = sender
%d = domain.com

Existe alguma maneira de usar o nome de login SASL original ('meunome de usuário') na minha consulta SQL?

Responder1

Na verdade, descobri que acessar o nome de usuário sasl auth não é necessário para essa finalidade.

De acordo com o manual do usuário, smtpd_sender_login_mapsnão deve retornar os endereços de e-mail pertencentes ao usuário sasl - deve retornar o usuário sasl que possui o endereço de e-mail do remetente.

http://www.postfix.org/postconf.5.html#smtpd_sender_login_maps

Em todos os casos, o resultado da pesquisa na tabela deve ser "não encontrado" ou uma lista de nomes de login SASL separados por vírgula e/ou espaço em branco.

Para tal consulta, o nome de usuário sasl não é necessário como variável.

informação relacionada