微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net核心我们计算出的请求签名与您提供的签名不匹配检查您的AWS Secret Access密钥和签名方法

如何解决asp.net核心我们计算出的请求签名与您提供的签名不匹配检查您的AWS Secret Access密钥和签名方法

asp.net核心api使用aws ses smtp凭据发送邮件

Amazon.SimpleEmail.AmazonSimpleEmailServiceException:我们计算出的请求签名与您提供的签名不匹配。检查您的AWS Secret Access密钥和签名方法。有关详细信息,请查阅服务文档。

这里是我的控制器

        public async Task<bool> SendEmail()
        {
            var UserName = _emailConfiguration.UserName;
            var Password = _emailConfiguration.Password;
            var port = _emailConfiguration.port;
            var smtpserver = _emailConfiguration.smtpServer;

            using (var ses = new AmazonSimpleEmailServiceClient(UserName,Password,RegionEndpoint.USEast2)
            {

                var sendResult = await ses.SendEmailAsync(new SendEmailRequest
                {
                    Source = "mail",Destination = new Destination { ToAddresses = new List<string> { "reciver mail" } },Message = new Amazon.SimpleEmail.Model.Message
                    {
                        Subject = new Amazon.SimpleEmail.Model.Content("Test Mail"),Body = new Body { Text = new Content("Body Content text mail") }
                    }
                });
                using (var client = new SmtpClient())
                    try
                    {
                        client.Connect(_emailConfiguration.smtpServer,_emailConfiguration.port,true);
                        client.AuthenticationMechanisms.Remove("XOAUTH2");
                        client.Authenticate(_emailConfiguration.UserName,_emailConfiguration.Password);

                    }
                    catch
                    {
                        throw;
                    }
                    finally
                    {
                        client.disconnect(true);
                        client.dispose();
                    }
                return sendResult.HttpStatusCode == HttpStatusCode.OK;




            }

这是我的appsetting.json

    "From": "email","smtpServer": "email-smtp.us-east-2.amazonaws.com","port": 465,"UserName": "myusername","Password": "mykey"
  },

电子邮件配置类


namespace EmailService
{
    public class EmailConfiguration
    {
        public string From { get; set; }
        public string smtpServer { get; set; }
        public int  port { get; set; }
        public string  UserName { get; set; }
        public string Password { get; set; }
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。