Il formato del record TXT default._bimi
Il formato del record TXT default._bimi
Per completare l'implementazione di Brand Indicators for Message Identification (BIMI), è necessario pubblicare un record DNS TXT. Questo record indica ai server di posta riceventi dove recuperare il logo SVG e il certificato Mark.
Questo articolo documenta la sintassi richiesta, i tag e le regole di formattazione per il record TXT BIMI [1].
L'hostname (selettore)
Pubblica il record BIMI come record TXT nella zona DNS del tuo dominio. L'hostname (il selettore) deve seguire il seguente formato:
[selettore]._bimi.[dominio]
Il selettore predefinito è default. Per il dominio example.com, pubblica il record TXT al seguente hostname:
default._bimi.example.com
Nota: Il protocollo supporta selettori personalizzati per sottodomini o unità aziendali, ma la maggior parte delle implementazioni utilizza il selettore default. I client di posta interrogano default._bimi quando nessun altro selettore è specificato negli header del messaggio.
La sintassi del valore del record
Il valore del record TXT è un elenco di tag separati da punto e virgola, con la stessa struttura di un record DMARC.
1. Il tag versione (v=)
Questo tag è obbligatorio e deve comparire per primo. Identifica la versione del protocollo.
Sintassi: v=BIMI1;
2. Il tag location (l=)
Questo tag è obbligatorio. Specifica l'URL HTTPS da cui il client di posta recupera il file logo W3C SVG Tiny P/S.
Sintassi: l=https://example.com/logo.svg;
Vincolo: L'URL deve utilizzare HTTPS. Gli URL HTTP non superano la validazione.
3. Il tag authority (a=)
Questo tag è opzionale nella specifica base, ma nella pratica è richiesto per la visualizzazione del logo in Gmail e Apple Mail. Specifica l'URL HTTPS da cui il client di posta recupera il Verified Mark Certificate (VMC) o il Common Mark Certificate (CMC) in formato .pem.
Sintassi: a=https://example.com/certificate.pem;
Fallback self-asserted: Per implementazioni self-asserted (supportate solo da Yahoo e AOL), includi il tag con un valore vuoto: a=;
Esempi di record completi
Esempio A: Implementazione certificata (Gmail e Apple Mail)
Utilizza questo formato per visualizzare il logo in Gmail e Apple Mail e per ottenere il segno di spunta blu di Gmail.
Type: TXT
Host: default._bimi
Value: v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/cert.pem;
Esempio B: Implementazione self-asserted (solo Yahoo)
Utilizza questo formato per i test o quando vuoi raggiungere Yahoo Mail prima di ottenere un VMC.
Type: TXT
Host: default._bimi
Value: v=BIMI1; l=https://example.com/logo.svg; a=;
Errori di sintassi comuni
I seguenti errori causano fallimenti nella validazione:
- Punto e virgola mancanti. Separa ogni tag con un punto e virgola.
- URL HTTP. Sia il tag
l=che il taga=devono fare riferimento a endpointhttps://. - File SVG non validi. Il tag
l=deve fare riferimento a un file W3C SVG Tiny P/S. File SVG standard, PNG o JPG causano la mancata visualizzazione del logo da parte del client di posta senza generare errori. - Tag
a=omesso. Per i record self-asserted, includi il taga=con un valore vuoto (a=;). Alcuni parser rifiutano i record che omettono completamente il tag.
Generazione automatica del record
La costruzione manuale del record introduce errori di sintassi. Per generare il file SVG e la stringa TXT DNS dai parametri del tuo dominio, utilizza makeBIMI, che fornisce un'interfaccia di copia con un solo clic.
Dopo aver generato il record, pubblicalo nella tua zona DNS. Se hai bisogno di un VMC per popolare il tag a= per la compatibilità con Gmail, utilizza un servizio di intermediazione certificati come veriBIMI per gestire il provisioning del certificato.
Riferimenti
[1] M. Blank, et al. "Brand Indicators for Message Identification (BIMI)." IETF Datatracker, RFC 9091, https://datatracker.ietf.org/doc/html/rfc9091