Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| rest_interface [2016/11/08 09:12] – Externe Bearbeitung 127.0.0.1 | rest_interface [2021/12/21 09:03] (aktuell) – [E-Mail mittels BennoID laden] lwsystems | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== | + | ====== |
| - | Das Web-Frontend | + | Das REST-Interface ist in " |
| + | |||
| + | ===== Frontents ===== | ||
| + | |||
| + | * Benno Web - Web-UI für direkte Benutzer-Interaktion | ||
| + | * [[rest.php]] - REST API Wrapper mit Authentisierung und Zugriffssteuerung | ||
| + | |||
| + | Ein Frontend | ||
| + | |||
| + | |||
| + | ===== Konfiguration ===== | ||
| Die Konfiguration für der Pfade für Index und Repository wird aus der Datei "/ | Die Konfiguration für der Pfade für Index und Repository wird aus der Datei "/ | ||
| Zeile 33: | Zeile 43: | ||
| Bei der Verwendung der Benno MailArchiv API sind folgende Sicherheitsaspekte unbedingt zu bedenken. | Bei der Verwendung der Benno MailArchiv API sind folgende Sicherheitsaspekte unbedingt zu bedenken. | ||
| - | ===== Shared Secret | + | ===== Shared Secret ====== |
| Das Shared Secret ist der „Schlüssel“, | Das Shared Secret ist der „Schlüssel“, | ||
| Zeile 57: | Zeile 67: | ||
| ====== Zugriff auf E-Mails über deren eindeutige ID im Archiv | ====== Zugriff auf E-Mails über deren eindeutige ID im Archiv | ||
| - | Alle archivierten E-Mails haben eine eindeutige ID, über die der direkte Zugriff auf die jeweilige E-Mail möglich ist. Ähnlich wie das Shared Secret stellt diese eindeutige ID einen sicherheitsrelevanten Aspekt dar. | + | Alle archivierten E-Mails haben eine eindeutige ID (// |
| Da eine ID eindeutig eine bestimmte E-Mail im Archiv adressiert, sollte diese ID ebenso wenig wie das Shared Secret direkt an den Benutzer weiter gegeben werden! Die Kenntnis der ID ermöglicht den Zugriff auf die zugehörige E-Mail im Archiv. | Da eine ID eindeutig eine bestimmte E-Mail im Archiv adressiert, sollte diese ID ebenso wenig wie das Shared Secret direkt an den Benutzer weiter gegeben werden! Die Kenntnis der ID ermöglicht den Zugriff auf die zugehörige E-Mail im Archiv. | ||
| - | Hinweis: In der Benno MailArchiv WebApp werden die tatsächlichen IDs der E-Mails der Trefferliste vor dem Anwender verborgen, in dem sie in der jeweiligen Session in einer Schattentabelle auf temporäre IDs umgemapt werden. Sieht ein Anwender die IDs der E-Mails einer Trefferliste, | + | Hinweis: In der Benno MailArchiv WebApp werden die tatsächlichen IDs der E-Mails der Trefferliste vor dem Anwender verborgen, in dem sie in der jeweiligen Session in einer Schattentabelle auf temporäre IDs umgemapt werden. Sieht ein Anwender die IDs der E-Mails einer Trefferliste, |
| + | |||
| + | ===== E-Mail mittels BennoID laden ===== | ||
| + | Die //BennoID// setzt sich aus dem Bezeichner für die Box und der Checksumme der E-Mail zusammen. Beide Token werden per Doppelpunkt getrennt. Die BennoID wird als Pfad relativ zum Repo-Verzeichnis des Containers aufgelöst. | ||
| + | |||
| + | Der Container ist in der Konfigurationsdatei [[standard-konfiguration|benno.xml]] wie folgt konfiguriert: | ||
| + | <file xml> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | In dieser Standardkonfiguration wird die Box als Jahreszahl (//< | ||
| + | |||
| + | Die Checksumme der BennoID wird in 3 Unterverzeichnisse (//< | ||
| + | |||
| + | Eine E-Mail mit der BennoID // | ||
| ====== Abschließender Hinweis | ====== Abschließender Hinweis | ||
| Zeile 68: | Zeile 100: | ||
| ====== Client-Implementierungen ====== | ====== Client-Implementierungen ====== | ||
| - | Das Web-Frontend implementiert einen Client für das Benno MailArchiv REST API. In diesem Paket ist zusätzlich ein in Perl implementierter Kommandozeilenclient (/// | + | Das Web-Frontend implementiert einen Client für das Benno MailArchiv REST API. In diesem Paket ist zusätzlich ein in Perl implementierter Kommandozeilenclient ([[benno-client]]) enthalten, der als einfaches Beispiel und für Testzwecke bei der implementierung eines eigenen Frontends dienen kann. |