Jak utworzyć plik BIMI SVG Tiny P/S (Przewodnik 2026)
Jak utworzyć plik BIMI SVG Tiny P/S (Przewodnik 2026)
Brand Indicators for Message Identification (BIMI) wyświetla logo Twojej organizacji obok uwierzytelnionych wiadomości w obsługiwanych klientach poczty elektronicznej. Aby opublikować rekord BIMI, musisz dostarczyć plik logo zgodny z ograniczonym profilem XML o nazwie SVG Tiny Portable/Secure (P/S).
Ten artykuł wyjaśnia wymagania profilu SVG Tiny P/S, elementy, które musisz usunąć z pliku źródłowego, oraz metody tworzenia zgodnego logo do wniosku o Verified Mark Certificate (VMC).
Uzasadnienie bezpieczeństwa dla SVG Tiny P/S
W3C zdefiniowało profil SVG Tiny P/S, aby wyeliminować zagrożenia bezpieczeństwa związane z renderowaniem grafiki wektorowej w klientach poczty elektronicznej [1]. Standardowy SVG obsługuje skrypty, ładowanie zewnętrznych zasobów oraz żądania sieciowe. Klient poczty renderujący standardowy SVG naraża odbiorców na ataki typu cross-site scripting (XSS) oraz piksele śledzące osadzone w treści wiadomości.
SVG Tiny P/S usuwa wszystkie dynamiczne i zewnętrzne możliwości. Rezultatem jest statyczny, samodzielny plik opisujący wyłącznie geometrię.
Zabronione elementy
Następujące elementy powodują niepowodzenie walidacji W3C. Urząd Certyfikacji odrzuca każdy wniosek VMC, który je zawiera.
| Typ elementu | Powód zakazu |
|---|---|
| Tagi | Zapobiega wykonywaniu JavaScript i atakom XSS |
| Tagi | Zapobiega osadzaniu grafiki rastrowej (PNG/JPG), która może ukrywać złośliwy kod |
| URI data:image | Zapobiega osadzaniu bitmap zakodowanych w Base64 |
| xlink:href | Zapobiega zewnętrznym żądaniom sieciowym (piksele śledzące) |
| Wymiary względne | Zapobiega przesunięciom układu; atrybuty width i height muszą być usunięte |
| Zewnętrzne CSS | Zapobiega wstrzykiwaniu zewnętrznych arkuszy stylów |
Wymagania matematyczne
Grupa Robocza AuthIndicators definiuje ograniczenia geometryczne zapewniające prawidłowe renderowanie logo w różnych klientach poczty, w tym tych stosujących maski okrągłe, kwadratowe lub zaokrąglone [2].
1. Proporcje 1:1
Logo musi być kwadratowe. Ustaw atrybut viewBox na przestrzeń współrzędnych 1:1, na przykład viewBox="0 0 100 100". Usuń atrybuty width i height. Sam viewBox kontroluje skalowanie.
2. Jednolite wypełnienie tła
Przezroczyste tła są niedozwolone. Klienci poczty przełączają się między jasnym i ciemnym motywem, a przezroczyste logo może stać się niewidoczne na każdym z tych teł. Dodaj jednolity element pokrywający cały viewBox.
3. Wymagane metadane
Zadeklaruj zgodność w głównym elemencie , ustawiając version="1.2" i baseProfile="tiny-ps". Dodaj element , aby spełnić wymagania dostępności.
Jak wygenerować zgodny plik
Standardowe narzędzia projektowe, w tym Adobe Illustrator i Figma, nie eksportują bezpośrednio do SVG Tiny P/S. Masz dwie opcje: ręczna sanityzacja pliku lub użycie narzędzia konwersji.
Metoda ręczna
Aby ręcznie oczyścić eksport SVG, otwórz plik w edytorze tekstu i wykonaj następujące kroki:
- Usuń wszystkie zabronione tagi wymienione w poprzedniej tabeli.
- Przekonwertuj style CSS na atrybuty prezentacji inline.
- Przelicz
viewBoxna proporcje 1:1. - Dodaj wymagane metadane
version,baseProfilei. - Zwaliduj wynik względem schematu W3C SVG Tiny 1.2.
Spodziewaj się wielu przebiegów walidacji. Małe błędy w nazwach atrybutów lub deklaracjach przestrzeni nazw powodują niepowodzenie walidacji.
Metoda automatyczna
Narzędzie konwersji, takie jak makeBIMI, wykonuje każdy krok programowo:
- Wektoryzacja: Jeśli przesyłasz obraz rastrowy (PNG lub JPG), narzędzie przekształca piksele w ścieżki wektorowe.
- Sanityzacja: Narzędzie usuwa tagi
,oraz odniesienia zewnętrzne. - Wymuszenie geometrii: Narzędzie stosuje ramkę ograniczającą 1:1 oraz jednolite wypełnienie tła.
- Walidacja: Narzędzie waliduje wynik względem schematu W3C SVG Tiny P/S.
Plik SVG jest warunkiem koniecznym do wniosku VMC. Po utworzeniu zgodnego pliku kontynuuj z audytem wymuszenia DMARC i prześlij plik do obsługiwanego Urzędu Certyfikacji.
Źródła
[1] W3C. "SVG Tiny 1.2 Portable/Secure." World Wide Web Consortium, https://www.w3.org/TR/SVGTiny12/ [2] AuthIndicators Working Group. "BIMI SVG Logo Requirements." BIMI Group, https://bimigroup.org/svg-logo-requirements/