2026年8月21日
2026年8月21日
BIMIの設定手順|DMARCの前提条件・SVGロゴの作り方・DNSレコードの公開と確認
BIMIは、送信ドメインのロゴを受信者のメール一覧に表示させるための仕組みです。設定そのものはDNSにTXTレコードを1件追加するだけですが、その前に「DMARCを quarantine か reject で運用していること」「仕様に合ったSVGロゴを用意すること」、多くの受信サービスでは「ロゴの証明書(VMCなど)を取得すること」が求められます。この記事では、前提条件の確認、ロゴの準備、レコードの書き方、公開後の確認までを順に説明し、どこで止まりやすいかも併せて整理します。
BIMIで何が変わり、何が変わらないのか
BIMI(Brand Indicators for Message Identification)は、認証に通ったメールにだけロゴを表示する「表示の仕組み」です。BIMI自体がなりすましを防ぐわけではなく、なりすまし対策の本体はSPF・DKIM・DMARCです。BIMIは、それらをきちんと運用しているドメインに対して、受信側が見た目の目印を出すためのものと考えてください。
また、レコードを公開してもロゴが表示されるかは受信側の判断です。対応しているサービス、証明書の要否、送信実績や評判の扱いはサービスごとに異なり、変更もあります(2026年10月現在)。「設定すれば表示される」ではなく「表示される条件を満たす」作業だと捉えておくと、後で迷いにくくなります。
前提条件:DMARCが強制ポリシーで動いていること
BIMIの前提は、送信ドメインのDMARCが p=quarantine または p=reject で運用されていることです。p=none のままではロゴは表示されません。まず現在のDMARCレコードを確認します。
dig _dmarc.example.com TXT +short
確認するポイントは次のとおりです。
p=がquarantineかrejectになっているか。pct=を指定している場合は100か(一部だけに適用する状態では条件を満たさないとされます)。- サブドメインのポリシー
sp=をnoneにしていないか。 - サブドメインから送る場合でも、親ドメイン(組織ドメイン)側のDMARCが強制ポリシーになっているか。
ここで p=none の段階なら、BIMIより先にDMARCの移行を進めます。いきなり reject にすると、DKIMやSPFの設定漏れがある送信元(フォーム通知、メルマガ配信サービス、請求書システムなど)のメールが届かなくなります。集計レポートで送信元を洗い出し、すべてが認証に通ることを確かめてから段階的に強めてください。
あわせて、実際に送っているメールが認証に通っているかも見ておきます。Gmailなどで受け取ったメールのヘッダーにある Authentication-Results で、dkim=pass と dmarc=pass になっているかを確認します。WordPressから送るメールも対象です。差出人アドレスが wordpress@ のままで別ドメインのサーバーから送られている、SMTPプラグインの送信サービス側でDKIMを設定していない、といった状態だとDMARCに通らず、そのドメインでBIMIを使う前提が崩れます。
ロゴを用意する:SVG Tiny PS 形式
BIMIのロゴは、一般的なSVGではなく「SVG Tiny Portable/Secure(SVG Tiny PS)」というプロファイルに合わせる必要があります。安全に表示できるよう機能を絞った形式で、主な条件は次のとおりです。
- ルート要素に
version="1.2"とbaseProfile="tiny-ps"を指定する。 <title>要素で組織名やブランド名を入れる。- スクリプト、アニメーション、外部ファイルへの参照、埋め込みのビットマップ画像は使わない。
- 縦横比は正方形。受信側で円形などに切り抜かれることが多いため、余白を取って中央に配置し、背景は透明ではなく塗りつぶしにしておくと崩れにくくなります。
- ファイルサイズは小さく保つ(BIMIの関係団体が目安を示しています)。
最小限の骨組みは次のようになります。実際のロゴは、デザインツールからSVGを書き出したあと、この形に合わせて不要な属性を取り除きます。
<?xml version="1.0" encoding="UTF-8"?>
<svg version="1.2" baseProfile="tiny-ps" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<title>Example Inc.</title>
<rect width="512" height="512" fill="#ffffff"/>
<circle cx="256" cy="256" r="180" fill="#1a5fb4"/>
</svg>
デザインツールの書き出し結果には、ルート要素の x・y 属性や独自の名前空間などが残りがちです。BIMIの関係団体や証明書の発行元が検証ツールを公開しているので、公開前にそれで形式を確認するのが近道です。
ロゴ証明書(VMC・CMC)が必要かを判断する
GmailやApple Mailなど主要な受信サービスの多くは、ロゴの所有を証明する証明書を求めます。代表的なのは次の2種類です。
- VMC(Verified Mark Certificate):登録商標になっているロゴが対象。審査を経て発行されます。
- CMC(Common Mark Certificate):商標登録が無くても、一定期間ロゴを使ってきた実績などを条件に発行されるもの。対応しているサービスはVMCより限られます。
どちらも発行できる認証局は限られ、審査には書類の確認などで日数がかかります。受信サービスごとに受け入れる証明書の種類や表示のされ方(認証済みを示す印の有無など)が違うため、ロゴを見せたい相手が主にどのサービスを使っているかを確認したうえで選びます。費用や発行条件は認証局ごとに異なるので、各認証局の案内を確認してください。証明書が無くてもBIMIレコード自体は公開できますが、その場合にロゴを出すかどうかは受信側の判断になります。
証明書は、発行時に提出したSVGロゴを内部に含んだPEM形式のファイルとして受け取ります。後述の a= タグでこのファイルの場所を指定します。
ロゴと証明書をHTTPSで公開する
ロゴのSVGと証明書のPEMファイルは、HTTPSで取得できる場所に置きます。WordPressサイトのサーバーに置く場合は、メディアライブラリではなくSFTPなどで直接配置するのがおすすめです。WordPressは標準ではSVGのアップロードを受け付けず、SVGのアップロードを広く許可するとスクリプトを含むファイルが紛れ込むおそれがあるためです。
https://example.com/bimi/logo.svg
https://example.com/bimi/vmc.pem
配置したら、ステータスと Content-Type を確認します。
curl -sI https://example.com/bimi/logo.svg
curl -sI https://example.com/bimi/vmc.pem
200 が返り、SVGが image/svg+xml で配信されていれば問題ありません。リダイレクトを挟む、ログインやBasic認証の内側に置く、CDNやセキュリティプラグインがボット扱いでブロックする、といった状態だと受信側が取得できません。証明書を使う場合は、証明書に含まれるロゴとURLで公開しているロゴを同じものにしておきます。
BIMIレコードを公開する
準備ができたら、DNSにTXTレコードを追加します。名前は default._bimi(セレクター default を使う場合)です。
名前: default._bimi.example.com
種類: TXT
値: v=BIMI1; l=https://example.com/bimi/logo.svg; a=https://example.com/bimi/vmc.pem
v=BIMI1:バージョン。先頭に置きます。l=:ロゴのURL(HTTPS)。a=:証明書(PEM)のURL。証明書を使わない場合はa=を空にするか省略します。
DNSの管理画面によっては、名前欄にドメイン部分を自動で付け足すため、default._bimi とだけ入力するのが正しい場合があります。二重に付いて default._bimi.example.com.example.com にならないよう注意します。TTLは、最初のうちは短め(数分〜1時間程度)にしておくと、修正したときに反映を待つ時間が短く済みます。
公開後の確認
まずDNSで値が引けるかを確認します。
dig default._bimi.example.com TXT +short
次に、BIMIの関係団体や証明書の発行元が提供している検証ツールで、レコード・ロゴ形式・証明書・DMARCの条件をまとめてチェックします。ツールの名称や画面は変わることがあるので、検索して最新のものを使ってください。
ロゴが表示されないときは、次の順で確認すると原因を絞り込みやすくなります。
- DMARCが強制ポリシーで、対象のメールが
dmarc=passになっているか。 digでBIMIレコードが引けるか。名前の二重付与や、値の前後の余分な文字が無いか。l=・a=のURLが、リダイレクトなしで200を返すか。- SVGがSVG Tiny PSの条件を満たしているか(検証ツールで確認)。
- 受信サービスが求める証明書を用意しているか。
これらがすべて整っていても、受信側のキャッシュや判断により、表示までに時間がかかったり一部のサービスでしか表示されなかったりします。送信実績の少ないドメインでは表示されないこともあります。
まとめ
- BIMIはロゴを表示する仕組みで、なりすまし対策の本体はSPF・DKIM・DMARC。表示するかどうかは受信側が決める。
- 前提はDMARCが
p=quarantineかp=rejectで運用されていること。WordPressなどすべての送信元が認証に通る状態を先に作る。 - ロゴはSVG Tiny PS形式の正方形SVG。検証ツールで形式を確認する。
- 主要な受信サービスではVMCやCMCが求められる。表示させたい相手のサービスに合わせて選ぶ。
- ロゴと証明書はHTTPSでリダイレクトなしに公開し、
default._bimiのTXTレコードでl=とa=を指定する。公開後はdigと検証ツールで確認する。