User tools

Website tools


storage:s3

This is an old version of the document!


Amazon S3 AWS Storage Backend

Amazon AWS bzw. der Amazon S3 Storage kann (ebenso wie S3-kompatible Storagesysteme) zur Ablage der archivierten E-Mails verwendet werden.


Legal information on GoBD-compliant archiving and S3 storage solutions

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.


Installation and setup of the Benno MailArchiv S3 Storage backend

Um die E-Mails des Repos in S3 zu speichern wird das Paket benno-storage-s3 benötigt.

apt install benno-storage-s3





configuration

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>

Identifier

Container or client

The container is addressed via its container identifier during the search. This should be a descriptive name for the client.

<simplecontainer>
  <identifier>Mandant1</identifier>

Address filter

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>

Index Directory

<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.

Storage backend metadata

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>

S3 Storage Backend

Endpoint URL

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 Region

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>

Bucket ID

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>
storage/s3.1531464931.txt.gz · Zuletzt geändert: 2018/07/13 06:55 von lwsystems