Never mind, user error, see last post.
Not deleting any text, in case this thread helps others searching for answers. Read the settings screen closely!
I recently installed phpList 3.3.1 and immediately want to switch from using my Web host's mail support to Amazon SES. I installed and activated the Amazon SES plugin (1.2.0+20170929), created a new IAM user, and copied the credentials to the plugin settings. I also added the relevant (Oregon) API endpoint to the plugin settings.
Trying to send a test message fails, always with InvalidClientTokenId errors like so:
MailSender http code: 403, result: HTTP/1.1 100 Continue HTTP/1.1 403 Forbidden x-amzn-RequestId: 8ea62136-d981-11e7-b621-ed8a74b2cdf4 Content-Type: text/xml Content-Length: 304 Date: Tue, 05 Dec 2017 06:00:12 GMT Connection: close Sender InvalidClientTokenId The security token included in the request is invalid 8ea62136-d981-11e7-b621-ed8a74b2cdf4 , curl error:
(Sorry, I don't know a better way to share that here other than copying and pasting from System->Log of Events.)
I've tinkered with various permissions for the IAM user in AWS, including copying from an IAM user that I've successfully used before for sending mail through SES, but no matter what I do I always get the 403 error with InvalidClientTokenId being the apparent root cause. I did verify that there is no leading or trailing space in the credentials in the plugin settings. I also deleted the first IAM user that I created for this and created a new one, just to get a fresh start in case I'd done something wrong the first time, but still no change. Oh, also, I verified that the "from" email address I'm using in phpList is verified in SES.
I don't think this is a bug, I'm assuming I have something configured wrong, but I don't know where to look/what to adjust. As with much of AWS, SES is non-trivial to configure, but at this point I don't know if I've done something wrong in AWS, in phpList, or in the plugin.