Direkt zum InhaltDirekt zur SucheDirekt zur Navigation
▼ Zielgruppen ▼

Humboldt-Universität zu Berlin - Web-Support des Computer- und Medienservice

Humboldt-Universität zu Berlin | Web-Support des Computer- und Medienservice | WWW allgemein | Formulare im Web | Formulare mit S/MIME-Formmail (gesicherte Datenübertragung)

Formulare mit S/MIME-Formmail (gesicherte Datenübertragung)

Was ist das und wofür ist es gut?

Wenn persönliche Daten (Account, Name, Vorname, Kreditkartendaten usw.) über ein Web-Formular abgefragt werden, dürfen diese Daten nicht unverschlüsselt abgespeichert werden. Das S/MIME-Formmail-Skript verschlüsselt die Formular-Daten und sendet diese per E-Mail an einen oder mehrere Empfänger.
Die Formular-Daten werden als Text-Datei-Anhang und als CSV-Datei-Anhang vesandt. Sollten Datei-Uploads dabei sein, werden diese separat angehängt und mitverschlüsselt. Beachten Sie, dass E-Mails einer Größenbeschränkung unterliegen und daher Datei-Uploads möglichst nicht verwendet werden sollten. Wird das Größenlimit überschritten, bekommt der Benutzer aber eine entsprechende Fehlermeldung. Die Verschlüsselung kann die Mail-Größe verdoppeln, so dass derzeit circa 10MB an Daten versandt werden könnnen, da das Limit derzeit bei 20MB liegt. Die Daten werden mit dem AES256-Algorithmus verschlüsselt und S/MIME-kodiert versandt. Diese Art der Kodierung wird von den meisten E-Mail-Clients ohne Plugin unterstützt (Thunderbird, Outlook usw.).


Voraussetzungen

  • gültiger HU-Account mit E-Mail-Adresse
  • ein Zertifikat der HU-CA mit korrekter, eigener E-Mail-Adresse (Anleitung auf den HU-CA-Seiten)
  • der Empfänger sollte dann natürlich das Zertifikat inkl. privatem Schlüssel im E-Mail-Client installieren (Anleitung auf den HU-CA-Seiten)


Verwendung

  • das Formular muss auf einer UTF-8 kodierten Web-Seite stehen:
      <head>
        ...
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
	... 
      </head>
  • die URL des CGI-Skripts lautet: https://www2.hu-berlin.de/cgi-bin/smimeformmail.pl
  • folgende Formular-Parameter sind Pflicht und können versteckt werden (type="hidden"):
    • recipient: E-Mail-Adresse mit gültigem HU-CA-Zertifikat
    • redirect: volle URL mit Bestätigung für erfolgreichen Versandt
  • diese Paremter sind optional aber empfehlenswert:
    • subject: E-Mail-Subject
    • from: Absender-Adresse
    • sizeerror: volle URL zu einer Fehlerseite, auf die umgelenkt wird, wenn das Mail-Size-Limit (derzeit 20MB pro Mail) überschritten wird
<!-- Beachten Sie das https://... im action-Parameter -->
<form method="POST" action="https://www2.hu-berlin.de/cgi-bin/smimeformmail.pl">
	<input type="hidden" name="recipient" value="EMPFAENGER-E-MAIL-ADRESSE"/>
	<input type="hidden" name="redirect" value="http://MEINE-BESTAETIGUNGS-WEBSEITE"/>
	<input type="hidden" name="subject" value="Formular-Daten">
	<input type="hidden" name="from" value="EINE GUELTE E-MAIL-ADRESSE FUER RUECKLAEUFER != recipient"/>
	<input type="hidden" name="sizeerror" value="http://MEINE-FEHLER_SEITE/"/>

	<!-- hier kann das Formular mit der Abfrage persoenlicher Information folgen (inkl. Submit-Knopf) -->
	...

</form>
  • Testen Sie Ihr Formular, bevor Sie es online stellen, vor allem, ob die E-Mails ankommen und ob Sie sie entschlüsseln und lesen können.

 

Hinweise

  • Es können mehrere Empfänger angegeben werden, in dem mehrere recipient-Input-Tags definiert werden, z.B:
    <input type="hidden" name="recipient" value="EMPFAENGER-E-MAIL-ADRESSE_1"/>
    <input type="hidden" name="recipient" value="EMPFAENGER-E-MAIL-ADRESSE_2"/> 
    <input type="hidden" name="recipient" value="EMPFAENGER-E-MAIL-ADRESSE_3"/> 
    
  • Wenn es für keinen recpipient ein gültiges HU-CA-Zertifikat gibt, wird keine E-Mail zugestellt und auch keine Fehlermeldung erzeugt. Testen Sie also Ihr Formular, bevor Sie es öffentlich zugänglich machen, ob verschlüsselte E-Mails ankommen und ob Sie die Daten entschlüsseln und lesen können.
  • Beachten Sie die Größenbeschränkung von E-Mails, vor allem, wenn Sie Datei-Uploads im Formular verwenden.