针对 Apple“邮件”中的 BIMI 支持准备你的电子邮件服务器

macOS Ventura 13、iOS 16iPadOS 16 或更高版本中,Apple“邮件”支持 BIMI (邮件识别品牌指示符号)。这是一种电子邮件规范,电子邮件客户端可根据相应组织提供的信息来显示品牌控制的标志。请简要了解 BIMI 的操作方式,以及如何确保符合条件的 BIMI 标志显示在 Apple“邮件”客户端中。

概览

BIMI 旨在确保仅为发送组织以正确方式发出的邮件显示标志。BIMI1, 2 借助域部署的 DMARC (基于域的信息认证、报告和一致性) 来防止域仿冒,并与 VMC (验证标记证书)3, 4 和其他形式的 BIMI 证据文件搭配使用,以验证标志的所有权和真实性,以及标志与这个域名的关联。

BIMI 合规性由服务器上的邮件提供商管理。如果邮件提供商已执行以下操作,Apple“邮件”中的给定电子邮件旁边就会显示组织的标志:

  • 根据 BIMI 规范已确保信息和域的合规性。
  • 已验证 BIMI 证据文件 (例如,邮件提供商信任的 VMC)。
  • 已添加所需标头来证明进行了“Apple‘邮件’客户端支持”中所述的各项检查。

如果邮件提供商未对给定的电子邮件执行上述操作,则该邮件在 Apple“邮件”中将不会显示组织的标志。

Apple“邮件”客户端支持

除了 BIMI 规范中概述的要求之外,Apple“邮件”客户端还要求邮件提供商插入 DKIM (域名密钥识别邮件) 签名。签名必须包含带有 bimi 语句的 Authentication-Results 标头 (同样来自邮件提供商)。这一附加要求为 Apple“邮件”客户端信任插入的 BIMI 标头提供了依据。

符合 BIMI 规范的有效电子邮件包含以下所有标头 (已按所述配置):

  • DKIM-signature 标头,其中 h 值包含服务器插入签名之前的所有 Authentication-Results
    • d 值必须拥有与收件服务器相同的组织域 (eTLD+1)
    • l 值必须等于 0
  • 带有 bimi=passpolicy.authority=passAuthentication-Results 标头
    • authserv-id 值必须拥有与以下任一对象相同的组织域:
      • 收件服务器
      • 第一个 (最新添加的) Authentication-Results 标头的 authserv-id
  • 同时包含 la 值的 BIMI-Location 标头
  • BIMI-Indicator 标头

标头示例

这一部分中的所有示例均假定邮件服务器为 imap.example.com。

格式正确的邮件标头

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wrongdomain.com;
    s=foo1234; t=1645949369;
    bh=bYktD+FKmAvkst9op6KYg+JHRznF/tB4agLqrbfatKo=; l=0;
    h=Authentication-Results:Authentication-Results:Authentication-Results:Authentication-Results:From;
    b=tpMLTXB...kQ==
Authentication-Results: bimi.example.com;
    bimi=pass header.d=examplesender.com header.selector=default
    policy.authority=pass
    policy.authority-uri=https://media.examplesender.com/media/vmc.pem
Authentication-Results: dmarc.example.com;
    dmarc=pass header.from=examplesender.com
Authentication-Results: dkim-verifier.example.com;
    dkim=pass (2048-bit key) header.d=examplesender.com header.i=@examplesender.com
    header.b=GyICAm88
Authentication-Results: spf.example.com;
    spf=pass smtp.mailfrom="delivery1234@send.examplesender.com"
BIMI-Indicator: eZvIB...kQ==
BIMI-Location: v=BIMI1;
    l=https://media.examplesender.com/media/logo.svg
    a=https://media.examplesender.com/media/vmc.pem

格式不正确的标头 (错误的 DKIM 域)

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wrongdomain.com;
    s=foo1234; t=1645949369;
    bh=bYktD+FKmAvkst9op6KYg+JHRznF/tB4agLqrbfatKo=; l=0;
    h=Authentication-Results:Authentication-Results:Authentication-Results:Authentication-Results:From;
    b=tpMLTXB...kQ==
Authentication-Results: bimi.example.com;
    bimi=pass header.d=examplesender.com header.selector=default
    policy.authority=pass
    policy.authority-uri=https://media.examplesender.com/media/vmc.pem
Authentication-Results: dmarc.example.com;
    dmarc=pass header.from=examplesender.com
Authentication-Results: dkim-verifier.example.com;
    dkim=pass (2048-bit key) header.d=examplesender.com header.i=@examplesender.com
    header.b=GyICAm88
Authentication-Results: spf.example.com;
    spf=pass smtp.mailfrom="delivery1234@send.examplesender.com"
BIMI-Indicator: eZvIB...kQ==
BIMI-Location: v=BIMI1;
    l=https://media.examplesender.com/media/logo.svg
    a=https://media.examplesender.com/media/vmc.pem

格式不正确的标头 (错误的 Authentication-Results 域)

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com;
    s=foo1234; t=1645949369;
    bh=bYktD+FKmAvkst9op6KYg+JHRznF/tB4agLqrbfatKo=; l=0;
    h=Authentication-Results:Authentication-Results:Authentication-Results:Authentication-Results:From;
    b=tpMLTXB...kQ==
Authentication-Results: dkim-verifier.example.com;
    dkim=pass header.d=example2.com header.i=@example2.com
    header.b=tfwjEzge
Authentication-Results: bimi.wrongdomain.com;
    bimi=pass header.d=examplesender.com header.selector=default
    policy.authority=pass
    policy.authority-uri=https://media.examplesender.com/media/vmc.pem
Authentication-Results: dmarc.example.com;
    dmarc=pass header.from=examplesender.com
Authentication-Results: dkim-verifier.example.com;
    dkim=pass (2048-bit key) header.d=examplesender.com header.i=@examplesender.com
    header.b=GyICAm88
Authentication-Results: spf.example.com;
    spf=pass smtp.mailfrom="delivery1234@send.examplesender.com"
BIMI-Indicator: eZvIB...kQ==
BIMI-Location: v=BIMI1;
    l=https://media.examplesender.com/media/logo.svg
    a=https://media.examplesender.com/media/vmc.pem