대답은 Lamson이 Python 표준 라이브러리 smtpd
모듈 위에 빌드되어 있기 때문에 Lamson이 SMTP AUTH (사용자가 전자 메일을 서버에서 받기 전에 인증해야하는 SMTP 확장)를 지원하지 않는다는 것입니다. SMTP AUTH를 지원하지 않습니다.
당신과 (이 램슨에서 들어오는 SMTP 서버를 구현하고 smptd.SMTPServer
에서 상속되는 클래스) lamson.server.SMTPReceiver
의 소스를 보면이 직접 확인할 수 있습니다 초기 전에 들어오는 SMTP 메시지를 처리하는 클래스가 smtpd.SMTPChannel
(smtpd.SMTPServer.process_message()
으로 전달).
그러나 모두 손실되지는 않지만 this project은 표준 라이브러리의 smptd
을 스핀 - 오프하여 SMTP AUTH 및 SSL (사용자 요구 사항 모두 포함)에 대한 지원을 제공하는 것을 목표로합니다.
위 프로젝트의 SMTPServer
에서 파생 된 새 클래스를 작성하고 Lamson의 STMPReceiver
동작을 에뮬레이션 할 수 있습니다. 그런 다음, 램슨의 config/boot.py
, 당신은 줄을 변경해야합니다 :
from lamson.server import Relay, SMTPReceiver
사람 :
from lamson.server import Relay
from my_module import my_class as SMTPReceiver
가 새로 작성된 클래스를로드 my_module
하고 적절한 my_class
교체.
이렇게하면 전에 Lamson 이 전자 메일 메시지를 수신 할 때 사용자 인증이 수행됩니다. 물론, SSL을 통해서만 연결이 가능하도록하고, 말하듯이 LDAP 부분을 구현할 것입니다 (SASL 구현이나 다른 방법으로 제공되지 않는 한).
나는 꽤 많이 다루고 있다고 생각합니다. 행운을 빌어 요.