Page tree
Skip to end of metadata
Go to start of metadata

Seit Version 5 verfügt PicApport über eine Benutzerverwaltung

Allgemeines

Die Benutzerverwaltung gliedert sich in drei Teilbereiche:

Rechteverwaltung (Permissions)

Hier wird definiert, welche Funktionen ein Benutzer ausführen darf. Rechte werden in PicApport über die Zugehörigkeit zu einer oder mehreren Gruppen verwaltet.
Ist ein Benutzer in mehreren Gruppen, addieren sich alle Rechte dieser Gruppen.

Filter

Zusätzlich zu den globalen Benutzerrechten können über Filter an den Benutzergruppen bestimmte Bearbeitungsfunktionen auf bestimmte Fotos eingegrenzt werden.
Wie bei den Rechten auch, addieren sich die Filter (logisches ODER) wenn ein Benutzer in mehreren Gruppen ist.  Ein Filter ist immer eine gültige PicApport Abfrage oder
das Eingabefeld bleibt einfach leer, wenn kein Filter für eine Gruppe benötigt wird. Wie Abfragen formuliert werden, ist ausführlich beschrieben in: Volltextsuche über alle Bilder

Es gibt folgende Filter:

  • Meta-Daten Filter
    Hier kann eingrenzt werden, welche Bilder ein Benutzer sehen darf (Bilder die ein Benutzer selbst hochgeladen hat, sind für diesen Benutzer immer sichtbar)
    Beispiel: not privat (Der Benutzer sieht nur Bilder die nicht das Wort "privat" in Titel, Verzeichnis usw. enthalten)

  • Meta-Daten Filter - Bearbeiten von Metadaten (seit Version 10.1)
    Dieser Filter ist nur relevant, wenn der Benutzer Metadaten ändern darf. Eine sinnvolle Anwendung ist hier der @ Operator (Abfrage aller Bilder, die der Benutzer selbst hochgeladen hat). Wird bei diesem Filter @ eingetragen, so darf der Benutzer nur Metadaten von Dateien bearbeiten, die er selbst hochgeladen hat.

  • Meta-Daten Filter - Löschen von Dateien (seit Version 10.1)
    Dieser Filter ist nur relevant, wenn der Benutzer Dateien löschen darf. Eine sinnvolle Anwendung ist auch hier wieder der @ Operator. Wird bei diesem Filter @ eingetragen, so darf der Benutzer nur Dateien löschen, die er selbst hochgeladen hat.


Theming

Seit Version 10.1 kann für jedes Benutzerkonto ein eigenes Farbschema definiert werden.
Ein Farbschema besteht aus einer Grundfarbe und einem Hintergrund-Modus (Hell oder Dunkel).
Ist für einen Benutzer kein spezielles Farbschema ausgewählt so wird automatisch das Standardschema (PicApport-Blau auf hellem Hintergrund) benutzt.
Das globale Farbschema kann über die Serverkonfiguration auf eigene Vorgaben umgestellt werden.
Unabhängig davon kann das Farbschema aber vom Administrator über die Benutzerverwaltung für jeden Benutzer individuell eingestellt werden. Sofern ein Benutzer über das Recht verfügt, sein eigenes Kennwort zu ändern, kann der jeweilige Benutzer das Farbschema auch selbst ändern. ( siehe client.theme.color und client.theme.darktheme im PicApport-Server Guide)


Benutzerkonto

Um Kompatibilität mit vorherigen Versionen zu erreichen ist PicApport per Default so konfiguriert, dass ein automatischer Logon über das Benutzerkonto PicApport erfolgt.
Wird das Kennwort dieses Kontos geändert, das Konto gelöscht oder deaktiviert muss sich jeder Benutzer am Server mit User-ID und Passwort anmelden.

Die Daten der Benutzerkonten werden standardmäßig im Verzeichnis ./picapport/users abgelegt. Existiert dieses Verzeichnis nicht, werden beim Start von PicApport automatisch folgende Konten generiert:

User-IDNamePasswordMitglied
in Gruppe
Anmerkungen
adminSystemadministratoradminSystemadministratoren

Wir empfehlen dringend, das Admin-Passwort nach der ersten Installation zu ändern.
Bei Auslieferung ist nur der Benutzer Admin berechtigt weitere Benutzer zuzulassen.

Um sich als Administrator anzumelden, wählen Sie auf der Startseite von PicApport oben links im "Hamburger-Menü" den Befehl "Abmelden". Jetzt kann man sich mit dem Admin-Konto anmelden und Passwörter sowie Berechtigungen einstellen

picapportPicApportpicapportFamilie

Bis zur Version 5 gab es in PicApport keine Benutzerverwaltung. Für private Netzwerke ist dies einfach bequemer. Damit dies auch für neue Versionen möglich ist, liefern wir ab sofort PicApport mit einem Standard-Benutzer picapport aus. Wird nun über einen Browser auf PicApport zugegriffen, wird automatisch der Benutzer PicApport (nebst den konfigurierten Rechten) angemeldet wenn folgendes zutrifft:

  • Ein Benutzerkonto picapport mit Kennwort picapport existiert und ist aktiv
gastGastgastGästeDies ist unser Vorschlag für ein Gast-Konto mit eingeschränkten Rechten


Gruppen

Alle Rechte die ein Benutzer in PicApport hat, bekommt dieser über seine Gruppenzugehörigkeit. Folgende Regeln gelten hierbei:

  • Ein Benutzer ist immer mindestens einer Gruppe zugeordnet
  • Ein Benutzer kann mehreren Gruppen zugeordnet werden. Er erhält dann die Summe aller Rechte der Gruppen (Vereinigungsmenge)

Die Daten der Gruppenkonten werden standardmäßig im Verzeichnis ./picapport/users abgelegt. Existiert dieses Verzeichnis nicht, werden beim Start von PicApport automatisch folgende Konten generiert:


Gruppen-IDNameAnmerkungen
adminsSystemadministratorenIm Auslieferungszustand haben Mitglieder dieser Gruppe folgende Rechte:
  • Alle Rechte außer:
    • Berechtigung Fotos zu entfernen (muss explizit aktiviert werden)
    • Berechtigung zur Serveradministration über die Web-Gui
    • Berechtigung fremden Bildschirm automatisch anzuzeigen wenn Slideshow läuft (z.B. für Bilderrahmen)
familyFamilie

Im Auslieferungszustand haben Mitglieder dieser Gruppe folgende Rechte:

  • Alle Rechte außer:
    • Berechtigung zum anlegen, ändern oder löschen von Benutzern
    • Berechtigung weitere Benutzer für die eigene Gruppe(n) zulassen
    • Berechtigung zum anlegen, ändern oder löschen von Benutzergruppen
    • Berechtigung zur Serveradministration über die Web-Gui
    • Berechtigung Geokoordinaten zu setzen (Geotagging).
    • Berechtigung Metadaten des Fotos zu bearbeiten. (Titel, Aufnahmedatum, usw.)
    • Berechtigung Fotos zu teilen bzw Links von geteilten Fotos zu verwalten
    • Berechtigung Fotos zu entfernen
    • Berechtigung fremden Bildschirm automatisch anzuzeigen wenn Slideshow läuft (z.B. für Bilderrahmen)
guestsGäste

Im Auslieferungszustand haben Mitglieder dieser Gruppe folgende Rechte:

  • Berechtigung Volltextsuchen durchzuführen (Sichtbarkeit: des globalen Suchfeldes)
  • Berechtigung Suchoptionen einzustellen (Sichtbarkeit: der Suchoptionen)
  • Berechtigung 'dynamische Sammlungen' anzuzeigen (Sichtbarkeit: 'dynamische Sammlung)
  • Berechtigung Designs auszuwählen


Anmelden am Server  (Benutzer Sitzung / Session)

Wenn die PicApport-Weboberfläche im Browser gestartet wird, gilt folgene Reihenfolge zum Ermitteln des Benutzerkontos für die aktuelle Sitzung:

  1. Prüfen auf shared link: Wenn eine gültige sid im Requestparameter enthalten ist, dann wird der aktuelle Tab als shared link angemeldet.

  2. Prüfen auf AccessToken: Wenn ein gültiges atu im Requestparameter enthalten ist, dann wird das Konto des Benutzers mit diesem AccessToken angemeldet (siehe auch Die PicApport URL's).
    (Das AccessToken wird über die Web-GUI der Benutzerverwaltung über das Kontext Menü des Benutzers erzeugt)

  3. Prüfen auf IP-Adresse: Ist für die aktuelle IP-Adresse ein Benutzerkonto verknüpft, dann wird dieses Benutzerkonto angemeldet.

  4. Prüfen auf PicApport Konto: Gibt es ein Benutzerkonto PicApport mit Kennwort picapport dann wird dieses Konto angemeldet.

  5. Konnte beim Abarbeiten der oben genannten Punkte kein gültiger Benutzer ermittelt werden, wird die Seite für den Logon angezeigt.

Die Rechte im einzelnen

ID der BerechtigungSeitBeschreibung
Berechtigungsgruppe Verwaltung
pap:admin:user
Berechtigung zum anlegen, ändern oder löschen von Benutzern
pap:admin:user:local
Berechtigung weitere Benutzer für die eigene Gruppe(n) zulassen
pap:admin:group
Berechtigung zum anlegen, ändern oder löschen von Benutzergruppen
pap:admin:changeownpassword
Berechtigung das eigene Kennwort zu ändern
pap:admin:assignipadress
Berechtigung eine IP-Adresse mit dem eigenen Account zu verknüpfen
pap:admin:shares6.2Berechtigung Links für geteilte Fotos zu verwalten
pap:admin:useroptions6.2Berechtigung Programmoptionen über Eingaben im globalen Suchfeld zu setzen.
siehe hierzu auch: Benutzerspezifische Programmoptionen (User-Options)
pap:admin:server7.6Berechtigung zur Serveradministration über die Web-Gui.
pap:admin:addon:config9.0Berechtigung Konfigurationsparameter von Add-ons einzustellen.
Letztlich obliegt es dem jeweiligen Add-on, ob und wie diese Berechtigung genutzt wird.
Berechtigungsgruppe Zugriff auf Fotos
pap:access:uploads
Berechtigung Dateien hochzuladen
pap:access:ownuploadsvisible
Uploads eines Benutzers sind für diesen immer sichtbar unabhängig von den Filtereinstellungen.
pap:access:downloads
Berechtigung Originaldateien (Fotos in Originalgröße) herunterzuladen / anzuzeigen
pap:access:metadata
Berechtigung Metadaten der Fotos anzuschauen
pap:access:share6.2Berechtigung Fotos zu teilen (Link erzeugen)
pap:access:removephotos7.6Berechtigung Fotos zu entfernen.
Berechtigungsgruppe Programmfunktionen
pap:feature:search
Berechtigung Volltextsuchen durchzuführen (Sichtbarkeit: des globalen Suchfeldes)
pap:feature:options
Berechtigung Suchoptionen einzustellen (Sichtbarkeit: der Suchoptionen)
pap:feature:timeline8.1Berechtigung die Timeline zu benutzen. (Sichtbarkeit: Timeline)
pap:feature:dyncol
Berechtigung 'dynamische Sammlungen' anzuzeigen (Sichtbarkeit: 'dynamische Sammlung)
pap:feature:dyncol:edit:glob
Speichern, ändern und löschen von globalen 'dynamischen Sammlungen'
pap:feature:dyncol:edit:group
Speichern, ändern und löschen von 'dynamischen Sammlungen' innerhalb der eigenen Gruppe(n)
pap:feature:dyncol:edit:user
Speichern, ändern und löschen von 'dynamischen Sammlungen' für das eigene Benutzerkonto
pap:feature:offcol
Berechtigung 'Lokale Sammlungen' anzulegen
pap:feature:dirbrowser
Berechtigung den Verzeichnisbrowser zu benutzen. (Sichtbarkeit: Verzeichnisse)
pap:feature:msg:newfotos
Wenn gesetzt bekommt der Benutzer auf der Startseite eine Info wenn neue Fotos vorhanden sind.
pap:feature:msg:queryresult
Wenn gesetzt, wird in der Thumbnailanzeige im Titel die Abfrage sowie die Anzahl gefundenen Fotos angezeigt.
pap:feature:map5.3Berechtigung das integrierte Kartenmodul zu benutzen.
pap:feature:mapedit7.6Berechtigung Mapmarker zu bearbeiten.
pap:feature:designs:select6.0.3Berechtigung Designs auszuwählen
pap:feature:designs:changedefault6.0.3Berechtigung das Standartdesign zu setzen.
pap:feature:thumbs:canselect6.0.3Berechtigung Fotos in der Thumbnailansicht auszuwählen.
pap:feature:sharescreen:send7.2.0Berechtigung eigenen Bildschirm zu teilen.
pap:feature:sharescreen:receive7.2.0Berechtigung fremden Bildschirm anzuzeigen.
pap:feature:sharescreen:autorecieve7.2.0Berechtigung fremden Bildschirm automatisch anzuzeigen wenn Slideshow läuft (z.B. für Bilderrahmen).

Berechtigungsgruppe Metadaten bearbeiten



pap:editmeta:mytags:like7.0Berechtigung ein Foto zu 'liken'.
pap:editmeta:mytags:tags7.0Berechtigung eigene Tags zu verwalten (Meine Tags).
pap:editmeta:geo:location7.0Berechtigung Geokoordinaten zu setzen (Geotagging).
pap:editmeta:photo7.0Berechtigung Metadaten des Fotos zu bearbeiten. (Titel, Aufnahmedatum, usw.)


Properties


Key
Default
Typ
Seit Version
Beschreibung
user.encryption.iterations1701intV5.0.0SHA-512-Iterationen zum verschlüsseln der Passwörter
user.password.min1intV5.0.0Mindest Passwortlänge
user.password.max75

int

V5.0.0Maximale Passwortlänge
user.log.accessfalsebooleanV5.0.0Erweitertes Serverlogging für Zugriffe einschalten



Technisches

XML-Persistenz 

Benutzer-XML

XML-PathAttributeBeispielwertBeschreibung
userdefinition:useridtestuser@test.net

Eindeutige ID eines Users


nameMax MustermannBenutzer- Anzeigename

descriptionthe quick brown fox jumps over the lazy dogKurzbeschreibung

activetrueFlag ob der Benutzer aktiv ist.

created149370075385Erstellungsdatum des Benutzers als long

lastupdate149370825561Letzte Aktualisierung des Benutzers als long

lastlogin149370325561Letzte Anmeldung des Benutzets als long
userdefinition:user:security: passwordhashed-valuex3ASj9ahC93 ... 8IH23XgcP+Dh8Gehashtes Passwort

unhashed-valueklartextpasswort

Password als Klartext. Dient nur zur manueller Erzeugung eines Benutzers.

Beim initialisieren wird dieser Eintrag automatisch zu einem hashed-value.

userdefiniton:user:ip-addresses:ip-addressvalue10.66.77.1IP-Adresse
userdefinition:user:attributes:attributenamestreetAttributname

valueBrückenstr. 2Attributwert


Rollen-XML

XML-PathAttributeBeispielwertBeschreibung
roledefinition:roleidguests

Eindeutige ID einer Rolle


nameGästeRollen- Anzeigename

descriptionthe quick brown fox jumps over the lazy dogKurzbeschreibung

activetrueFlag ob die Rolle aktiv ist.
roledefinition:role:members:memberidtestuser@test.netBenutzer die zu dieser Rolle gehören
roledefinition:role: permissions: permissionvaluepap:access:downloadsAlle Rechte der Rolle
roledefiniton:role:attributes:attributenamestreetAttributname

valueBrückenstr. 2

Attributwert


Verschlüsselung

Es werden zwei verschiedene Verschlüsselungsverfahren verwendet. Die interne Verschlüsselung zum Passwortschutz ist ein Hashverfahren (SHA-512).

Zudem wird ein Asymmetrisches Kryptosystem (RSA) zur Kommunikation zwischen Client und Server verwendet.


Verschlüsselung intern 

Die Anzahl der Iterationen und die Salt-größe können über eine Properties-Datei konfiguriert werden.

AlgorithmusSalt-größeIterationenVerwendung
SHA-51217 ByteskonfigurierbarSpeicherung von Passwörtern & Gegenprüfung auf Korrektheit

Verschlüsselung Client-Server-Kommunikation 

AlgorithmusPublicKey größeVerwendung
RSA

1024 bit

Erzeugung von Publickeys zur clientseitigen Verschlüsselung von

Passwörtern und zur Entschlüsselung dieser auf Serverseite.