[FOLIO-2005] Email routing on AWS VPC Created: 07/May/19  Updated: 03/Jun/20  Resolved: 10/May/19

Status: Closed
Project: FOLIO
Components: None
Affects versions: None
Fix versions: None

Type: Task Priority: P3
Reporter: Oleksii Maksymov Assignee: John Malconian
Resolution: Cannot Reproduce Votes: 0
Labels: platform-backlog
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original estimate: Not Specified

Sprint: CP: sprint 63
Story Points: 1
Development Team: Core: Platform

 Description   

There are failures during the sending of email using the service AWS SMTP and Gmail.

Module to send an email: mod-email

The module uses the configuration provided by the provider to send emails.
Vert.x MaillClient https://vertx.io/docs/vertx-mail-client/java/ is responsible for sending mail in the module.

SMTP providers:
1. AWS

  • "host": "email-smtp.us-east-1.amazonaws.com"
  • "port": 587

2 Gmail

  • "host": "smtp.googlemail.com"
  • "port": 465


 Comments   
Comment by John Malconian [ 09/May/19 ]

Oleksii Maksymov Sending outbound mail through the AWS SES gateway, email-smtp.us-east-1.amazonaws.com, requires credentials (username/password). Are these credentials configured anywhere in the module's configuration?

https://docs.aws.amazon.com/ses/latest/DeveloperGuide/smtp-credentials.html

Comment by Oleksii Maksymov [ 10/May/19 ]

John Malconian Yes, this configuration is configured in the `mod-configuration` module.
To configure SMTP, the settings described in the https://github.com/folio-org/mod-email are used.

Required AWS configuration options:

  • EMAIL_SMTP_HOST
  • EMAIL_SMTP_PORT
  • EMAIL_USERNAME
  • EMAIL_PASSWORD
  • EMAIL_FROM ("value": "noreply@folio.org")

Configuration SMTP settings you can get from Khalilah Gambrell

Currently, we do not have a common approach to storing an SMTP configuration (sensitive information, SMTP credentials) and each time we configure the SMTP config manually.
Now the configuration is available on servers https://folio-snapshot-stable.aws.indexdata.com and https://folio-testing.aws.indexdata.com

Perhaps Folio or you have a solution for storing sensitive information, as an example of AWS Key Management Service (KMS) for each server

Comment by John Malconian [ 10/May/19 ]

Just so I understand, is the issue regarding "sensitive information" about storing this in FOLIO or outside of FOLIO? We have methods to protect sensitive information in build scripts, etc. Instead of repeatedly configuring the SMTP info manually, we should incorporate it into the build if possible.

Once configured, do you have issues with outbound mail on https://folio-snapshot-stable.aws.indexdata.com and https://folio-testing.aws.indexdata.com? Currently?

I don't see any evidence of an issue making a network connection to the AWS mail gateway from the FOLIO instance.

Comment by Oleksii Maksymov [ 10/May/19 ]

John Malconian Today I tested https://folio-snapshot-stable.aws.indexdata.com and https://folio-testing.aws.indexdata.com and everything was fine with sending an email.

Comment by Oleksii Maksymov [ 10/May/19 ]

About "sensitive SMTP information", I can't say the exactly, but it is different for each tenant.
Each tenant can have its own SMTP server for sending mail (AWS or other)
But I think that it is necessary to raise this question since manually setting the configuration each time is not very convenient.

Comment by John Malconian [ 10/May/19 ]

Khalilah Gambrell If we want to automatically create an SMTP configuration for the default 'diku' tenant in these daily FOLIO AWS builds, please create a separate issue for that. Otherwise, I will close this issue.

Comment by Oleksii Maksymov [ 10/May/19 ]

Khalilah Gambrell John Malconian If it is possible to create a build script that will fill the `mod-configuration` module with an SMTP configuration for the default 'diku' tenant for servers (testing, snapshot, snapshot-stable), this will be a good solution.
What do you think about it?

I can provide the correct information (SMTP configuration for AWS) for the mod-config, which mod-email receives to send mail.

Comment by Peter Murray [ 10/May/19 ]

I set up the SMTP credentials on AWS, and if I can help let me know.

Generated at Thu Feb 08 23:17:30 UTC 2024 using Jira 1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d.