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

如何解决Odoo 17通过Microsoft 365中继时的SendAsDenied错误?

解决Odoo 17通过Microsoft 365 SMTP中继转发邮件时的SendAsDenied错误

问题根源

错误SendAsDenied; erp@my_company.com not allowed to send as personal@gmail.com的核心原因:Odoo在转发外部邮件(来自personal@gmail.com)时,尝试以原发件人身份通过Microsoft 365 SMTP中继发送,但Exchange Online禁止你的catchall邮箱erp@my_company.com冒充外部域(gmail.com)的邮箱地址发件。

解决方案

方案1:强制Odoo使用中继邮箱作为发件人(推荐)

让Odoo转发邮件时统一用catchall邮箱发件,同时在邮件内容中保留原发件人信息:

  • 登录Odoo后台,进入设置 > 技术 > 参数 > 系统参数
  • 搜索或添加以下系统参数:
    • mail.default.from:设置为erp@my_company.com(你的catchall邮箱地址)
    • mail.force.smtp.from:设置为True,强制所有SMTP发送的邮件使用上述默认发件人,而非原邮件发件人
  • 保存参数后测试转发,此时发件人会显示为erp@my_company.com,Exchange不会拦截,团队成员仍能在邮件内容中看到原发件人personal@gmail.com的信息。

方案2:调整Exchange发送权限(仅内部域适用)

若需保留原发件人显示,注意此方法仅对内部域邮箱有效,外部域(如gmail.com)无法配置:

  • 登录Microsoft 365 Exchange管理中心,进入收件人 > 邮箱
  • 找到erp@my_company.com邮箱,进入权限 > 发送权限
  • 添加内部团队成员邮箱,授予SendAs权限
  • 此方法无法解决外部发件人(如personal@gmail.com)的转发问题,仅作内部场景补充。

方案3:配置团队邮箱作为转发发件人

让Odoo使用CRM团队邮箱sales.us@my_company.com转发邮件:

  • 进入Odoo的CRM团队设置,找到对应sales.us@my_company.com的团队
  • 在邮件选项卡中,设置回复邮件使用为团队邮箱sales.us@my_company.com
  • 在Exchange管理中心,给erp@my_company.com授予对sales.us@my_company.com的SendOnBehalfOf权限
  • 转发时发件人会显示为sales.us@my_company.com(由erp代为发送),Exchange会允许该操作。

内容的提问来源于stack exchange,提问作者Sean McCarthy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 17:27:38