You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 6应用部署Azure App Service后调用AWS SES发件失败求助

解决思路
  • 排查AWS侧的访问与错误日志

    1. 登录AWS控制台,查看CloudWatch中SES的发送日志,确认是否有来自Azure App Service的请求记录。如果没有,说明请求未到达AWS;如果有,查看日志中的错误详情(可能代码未捕获到AWS返回的错误)。
    2. 检查CloudTrail中的API调用记录,确认SendEmail或SendRawEmail操作是否被触发,以及对应的返回状态码。
  • 增强代码的错误捕获与日志输出

    1. 在发送邮件的代码块中添加完整的try-catch逻辑,捕获所有异常(包括AggregateException),并将异常详情写入Azure App Service日志:
      try
      {
          var response = await client.SendEmailAsync(request);
          _logger.LogInformation($"邮件发送成功,MessageId: {response.MessageId}");
      }
      catch (Exception ex)
      {
          _logger.LogError(ex, "邮件发送失败");
      }
      
    2. 在appsettings.json中开启AWS SDK的Debug级日志,便于排查SDK内部的请求细节:
      "Logging": {
        "LogLevel": {
          "Default": "Information",
          "Microsoft.AspNetCore": "Warning",
          "Amazon": "Debug"
        }
      }
      
    3. 通过Azure门户的「日志流」或Kudu工具查看详细日志,定位具体问题。
  • 验证Azure App Service的网络连通性

    1. 使用Kudu工具(https://<你的应用名>.scm.azurewebsites.net/)打开PowerShell终端,执行命令测试与SES端点的连通性:
      # 测试SMTP端口(465/587)
      Test-NetConnection email-smtp.<你的SES区域>.amazonaws.com -Port 465
      # 测试API端口(443)
      Test-NetConnection ses.<你的SES区域>.amazonaws.com -Port 443
      
    2. 如果连通失败,检查Azure App Service的出站网络规则:基础计划是否存在端口封锁,或是否需要添加出站安全规则允许访问AWS SES的IP段。
  • 确认凭证与环境变量配置

    1. 检查Azure App Service的「应用程序设置」中是否存在AWS_ACCESS_KEY_ID或AWS_SECRET_ACCESS_KEY环境变量,若有且与预期不符,删除或修改为正确值(AWS SDK会优先读取环境变量,可能覆盖硬编码的凭证)。
    2. 确保代码中明确指定SES凭证,避免SDK自动加载错误的凭证源:
      var credentials = new Amazon.Runtime.BasicAWSCredentials("你的AccessKey", "你的SecretKey");
      var sesClient = new Amazon.SimpleEmail.AmazonSimpleEmailServiceClient(credentials, Amazon.RegionEndpoint.<你的SES区域>);
      
  • 检查AWS SES账号状态

    1. 确认SES账号是否处于沙箱模式:沙箱模式下仅允许向已验证的收件人发送邮件,若部署后发送至未验证邮箱,会静默失败(无明显报错)。
    2. 查看SES控制台的「发送统计」与「投诉/退信率」,确认账号是否因合规问题被限制发送。
  • 排查Azure基础计划的特殊限制

    1. 查阅Azure App Service基础计划的文档,确认是否存在出站网络或服务访问限制,例如部分区域的基础计划可能默认限制某些外部服务的访问。

内容的提问来源于stack exchange,提问作者Aws rayyan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 01:53:21