This is an old version of the document!
Amazon AWS bzw. der Amazon S3 Storage kann (ebenso wie S3-kompatible Storagesysteme) zur Ablage der archivierten E-Mails verwendet werden.
Sollen E-Mails rechtssicher nach deutschem Recht (insbes. GoBD usw.) archiviert werden, impliziert die Nutzung von Amazon S3 AWS als externe Cloud-Storagetechnologie rechtliche Aspekte, die zwingend mit Amazon geklärt werden müsssten. Hier ist besonders der physische Speicherort der archivierten E-Mails vertraglich mit Amazon festzulegen, da GoBD-konform nur archiviert werden kann, wenn die abgelegten Mails in Deutschland gespeichert werden. Abweichende Nutzungen sollten nicht ohne ausdrückliche Genehmigung der Finanzverwaltung bzw. des zuständigen Finanzamts angestrebt werden. Werden S3-kompatible Storagelösungen bei anderen Cloud-Dienstleistern verwendet, gilt dies selbstverständlich entsprechend. Selbiges gilt für Storagelösungen mit S3-Schnittstelle im Eigenbetrieb, sofern sie außerhalb des eigenen Unternehmens in der Cloud verwendet werden.
The aforementioned legal notices do not constitute legal advice. They serve only as general information. We assume no liability for the accuracy or completeness of the information. All liability is excluded.
Um die E-Mails des Repos in S3 zu speichern wird das Paket benno-storage-s3 benötigt.
apt install benno-storage-s3
The configuration is entered in the configuration file /etc/benno/benno.xml .
<simplecontainer> <identifier>Mandant1</identifier> <conditions> <or> <domain sender="true" recipient="true" from="true" to="true" cc="true">mandant1.de</domain> <domain sender="true" recipient="true" from="true" to="true" cc="true">mandant1.com</domain> </or> </conditions> <luceneindex version="LUCENE_36"> <directory>/srv/benno/mandant1/index</directory> </luceneindex> <boxgenerator rotation="YEARLY"> <directory>/srv/benno/mandant1/repo</directory> <boxtemplate> <compression>gzip</compression> <journal rotation="MONTHLY"/> <storage driver="s3"> <identifier>Bucket1</identifier> <endpoint>https://gos3.io</endpoint> <authentication> <authKeyId>YOUR_S3_AUTH_KEY_ID</authKeyId> <authKey>YOUR_S3_AUTH_KEY</authKey> </authentication> </storage> </boxtemplate> </boxgenerator> </simplecontainer>
The container is addressed via its container identifier during the search. This should be a descriptive name for the client.
<simplecontainer> <identifier>Mandant1</identifier>
Im Tag <conditions /> unterhalb von <simplecontainer /> wird festgelegt, welche Sender- und Empfängeradressen der E-Mails in diesem Container gespeichert werden.
<simplecontainer> <conditions> <or> <domain sender="true" recipient="true" from="true" to="true" cc="true">mandant1.de</domain> <domain sender="true" recipient="true" from="true" to="true" cc="true">mandant1.com</domain> </or> </conditions>
<simplecontainer> <luceneindex version="LUCENE_36"> <directory>/srv/benno/mandant1/index</directory> </luceneindex>
Der Index muss im Filesytem gespeichert werden. hier wird der Pfad zum Index festgelegt. Das Verzeichnis wird beim Start des Archvierungs-Daemons automatisch erzeugt.
Die Metadaten des Repos werden im Filesystem gespeichert. Der hier angegebene Pfad muss für jeden Container unterschiedlich sein. Dieser Pfad ist gleichzeitig das Prefix bei der Speicherung in S3.
Dieser Pfad wird im <directory />-Tag innerhalb vom <boxgenerator /> konfiguriert.
<boxgenerator rotation="YEARLY"> <directory>/srv/benno/mandant1/repo</directory>
Alternativ kann auch per Endpoint-URL () auf den Bucket zugegriffen werden.
<storage driver="s3"> <identifier>Bucket1</identifier> <endpoint>https://gos3.io</endpoint> <authentication> <authKeyId>YOUR_S3_AUTH_KEY_ID</authKeyId> <authKey>YOUR_S3_AUTH_KEY</authKey> </authentication> </storage>
AWS Storage is configured via the "Access Key Id" (<authKey /> ) and “Secret Access Key” (<authKey /> ) and the region (<region /> ).
<storage driver="s3"> <identifier>Bucket1</identifier> <region>eu-central-1</region> <authentication> <authKeyId>YOUR_S3_AUTH_KEY_ID</authKeyId> <authKey>YOUR_S3_AUTH_KEY</authKey> </authentication> </storage>
Der Identifier unterhalb von <storage /> legt fest, in welchem Bucket die Objekte gespeichert werden. Die Bucket-Id kann dabei mehrfach vergeben werden.
Within the bucket, objects are stored with a prefix .
If no bucket with this name exists, one will be created.
<storage driver="s3"> <identifier>Bucket1</identifier>