pl  |  en

Django sem, czyli jak z EmailMessage zrobić SignedEmailMessage

Wbrew pozorom podpisywanie maili nie zawsze kończy się na „Pozdrawiam”. Bezpieczeństwo w sieci ma wiele odsłon, a jedną z nich jest certyfikacja maili.

 

Django-sem to biblioteka ułatwiające pozornie (ale tylko pozornie) proste zadanie dodawania certyfikatów do maili w Django. W prezentacji przedstawionej na krakowskim Pykoniku opisany został sposób użycia klasy SignedEmailMessage, która w przystępny sposób pozwala na dodanie certyfikatu do wysyłanego maila.

Dostępne źródła paczki:
pip install django-sem

https://github.com/Gandi24/django-sem

Najsłabszym elementem django-sem jest biblioteka M2Crypto. Poza problemami w implementacji dodawania certyfikatu (które oczywiście są już rozwiązane), wiele osób napotyka problem z instalacją M2Crypto. Istnieją dwa zasadnicze problemy, których rozwiązanie często pozwala na poprawną instalację. Przede wszystkim należy doinstalować python development packages:

sudo apt-get install python-dev

Nie należy instalować paczki M2Crypto znajdującej się na pypi. Pip install M2Crypto w 90% przypadków poprostu nie zadziała. Istnieją jednak dwie inne metody, które cieszą się znacznie większą skutecznością instalacji. Pierwsza z nich to skorzystanie z apt-get:

sudo apt-get install python-m2crypto

Drugą metodą jest korzystanie z pip, lecz instalacja paczki znajdującej się na Bazaar:

pip install -e bzr+http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/precise/m2crypto/precise/#egg=M2Crypto

Po skutecznej instalacji M2Crypto nic więcej nie powinno sprawiać problemów. Pozostaje już tylko wysyłać certyfikowane maile.

Jakub Wasielak