mirror of
https://github.com/0rangebananaspy/authelia.git
synced 2024-09-14 22:47:21 +07:00
Allow anonymous user in SMTP notifier
SMTP notifier should be able to send emails with anonymous user, i.e. without providing username and password in configuration file.
This commit is contained in:
parent
329927b865
commit
d3a2251d4a
|
@ -73,8 +73,8 @@ export interface GmailNotifierConfiguration {
|
|||
}
|
||||
|
||||
export interface SmtpNotifierConfiguration {
|
||||
username: string;
|
||||
password: string;
|
||||
username?: string;
|
||||
password?: string;
|
||||
host: string;
|
||||
port: number;
|
||||
secure: boolean;
|
||||
|
|
|
@ -28,11 +28,15 @@ export class MailSenderBuilder implements IMailSenderBuilder {
|
|||
host: options.host,
|
||||
port: options.port,
|
||||
secure: options.secure, // upgrade later with STARTTLS
|
||||
auth: {
|
||||
};
|
||||
|
||||
if (options.username && options.password) {
|
||||
smtpOptions.auth = {
|
||||
user: options.username,
|
||||
pass: options.password
|
||||
}
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
return new MailSender(smtpOptions, this.nodemailer);
|
||||
}
|
||||
}
|
|
@ -25,24 +25,41 @@ describe("test MailSenderBuilder", function() {
|
|||
Assert.equal(createTransportStub.getCall(0).args[0].auth.pass, "pass_gmail");
|
||||
});
|
||||
|
||||
it("should create a smtp mail sender", function() {
|
||||
const mailSenderBuilder = new MailSenderBuilder(Nodemailer);
|
||||
mailSenderBuilder.buildSmtp({
|
||||
host: "mail.example.com",
|
||||
password: "password",
|
||||
port: 25,
|
||||
secure: true,
|
||||
username: "user",
|
||||
sender: "admin@example.com"
|
||||
describe("build smtp mail sender", function() {
|
||||
it("should create a smtp mail sender with authenticated user", function() {
|
||||
const mailSenderBuilder = new MailSenderBuilder(Nodemailer);
|
||||
mailSenderBuilder.buildSmtp({
|
||||
host: "mail.example.com",
|
||||
password: "password",
|
||||
port: 25,
|
||||
secure: true,
|
||||
username: "user",
|
||||
sender: "admin@example.com"
|
||||
});
|
||||
Assert.deepStrictEqual(createTransportStub.getCall(0).args[0], {
|
||||
host: "mail.example.com",
|
||||
auth: {
|
||||
pass: "password",
|
||||
user: "user"
|
||||
},
|
||||
port: 25,
|
||||
secure: true,
|
||||
});
|
||||
});
|
||||
Assert.deepStrictEqual(createTransportStub.getCall(0).args[0], {
|
||||
host: "mail.example.com",
|
||||
auth: {
|
||||
pass: "password",
|
||||
user: "user"
|
||||
},
|
||||
port: 25,
|
||||
secure: true,
|
||||
|
||||
it("should create a smtp mail sender with anonymous user", function() {
|
||||
const mailSenderBuilder = new MailSenderBuilder(Nodemailer);
|
||||
mailSenderBuilder.buildSmtp({
|
||||
host: "mail.example.com",
|
||||
port: 25,
|
||||
secure: true,
|
||||
sender: "admin@example.com"
|
||||
});
|
||||
Assert.deepStrictEqual(createTransportStub.getCall(0).args[0], {
|
||||
host: "mail.example.com",
|
||||
port: 25,
|
||||
secure: true,
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Reference in New Issue
Block a user