open-datenschutzcenter icon indicating copy to clipboard operation
open-datenschutzcenter copied to clipboard

Bessere Installationsanleitung erstellen

Open meckcamp opened this issue 4 years ago • 19 comments

Leider ist die Installationsanleitung nicht ausreichend. Selbst als erfahrener Webmaster gelingt es nicht, über ein 500-er Serverfehler hinaus zu kommen. Die Beschreibung des Anlegens der Default Users ist dürftig und bedarf einer Überarbeitung. Auch ein gegen Bezahlung angebotenes Datenbank-Template ist nicht gerade OpenSource, eine Anleitung, wie man die Datenbank füttert sollte standardmäßig im Wiki / Installationshandbuch stehen. Ich biete euch gern meine Unterstützung an.

meckcamp avatar Nov 04 '20 13:11 meckcamp

Hi, kannst du mir noch mehr Infos zu dem 500er geben. Aktiviere am besten direkt über die .env.local den Debug Mode. Danach erhältst du noch mehr Informationen die wichtig für die Fehlerbehebung sind.

#APP_ENV=dev --> APP_ENV=dev APP_DEBUG=1 Nachdem du den Halitekey angelegt hast kannst du mal das Bash Script im Root Verzeichnis "BranchPipeline.sh" starten. Damit werden alle Berechtigungen für die Verzeichnisse gesetzt. Bei Symfony ist es wichtig, dass der cache und Log Ordner der www-data Eigentum ist. Diesen Schritt habe ich in der Anleitung vergessen. bash BranchPipeline.sh BranchPipeline.sh

holzi1005 avatar Nov 04 '20 15:11 holzi1005

Hallo, das ging ja fix, also es kommt folgende Fehlermeldung, nachdem ich deine Änderungen eingebaut habe:

"An exception has been thrown during the rendering of a template ("Asset manifest file "PATH /public/build/manifest.json" does not exist.")."

PATH ist mein vollständiger Pfad, den habe ich ausgeblendet.

Gruß Sven

meckcamp avatar Nov 04 '20 17:11 meckcamp

Hallo @meckcamp du benötigst auf dem Server neben PHP noch Node mit dem Paketmanager NPM. Dieser wird benötigt, damit alle Assets über Webpack korrekt heruntergeladen und dann das JS kompiliert wird. Danke noch für den Hinweis. Wir werden das noch in der Anleitung ergänzen.

holema avatar Nov 04 '20 18:11 holema

Hallo,

jetzt habe ich das Login-Fenster, komme allerdings nicht mit dem default user rein. Was muss ich tun?

meckcamp avatar Nov 04 '20 19:11 meckcamp

Hi @meckcamp, der Default User ist nur als Platzhalter für die Datenbank damit diesem Default Werte zugewiesen werden können. Mit diesem kannst du dich nicht anmelden, da dieser keine "echtes" Passwort hat. Das Usermanagement läuft über FOSUser. Daher musst du einen Benutzer mit dem FOS Bundle erstellen und das geht über die Console.

php bin/console fos:user:create php bin/console fos:user:enable <username>

Danach musst du dich noch zu einem Team/Mandanten hinzufügen. Erstelle dafür am besten noch ein neues Team in mySQL und wähle dieses in der Tabelle fos_user Team und Admin Team aus. Danach kannst du dich einloggen. Aktuell die Erstellung von Teams/Mandanten noch nicht direkt im ODC.

holzi1005 avatar Nov 04 '20 19:11 holzi1005

Hi, super und vielen Dank für die Unterstützung. Bis jetzt funktioniert der Login, allerdings komme ich nur bis zur Akademie, wie kann ich nun die Default Daten usw. in der Datenbank füttern? Ich verwende phpmyadmin.

Danke, Sven!

meckcamp avatar Nov 04 '20 21:11 meckcamp

hi, wenn du nur in die Akadmie kommst musst du dich erst noch beim ersten Mal direkt in der Datenbank zum Team und Admin Team hinzufügen. Aktuell bist du nur im Akademie Team verbunden. Die Teams sind die Gleichen. Du musst in deinem Benutzer das Team drei mal verknüpfen.

Die Default Daten müssen über die Datenbank eingetragen werden oder über ein odif importiert werden. Für ein odif bitte direkt eine Email schicken damit wir kontakt aufnehmen dürfen. Die Email findest du auf unserer Webseite.

holzi1005 avatar Nov 05 '20 09:11 holzi1005

Hallo, zur Installation auf einem lokalen Webserver (Apache/MySql) habe ich zwei ganze Tage verbracht, bin die Anleitung rauf und runter und musste letztlich aufgeben.. Als Entwickler für lokale Anwendungen,( SQL, .Net) bin ich mit Web-Apps nicht vollständig vertraut aber habe auf dem Apache (Xampp) meist alles zum laufen bekommen.

Meine beruflichen Interessen am ODC gehen über eine einzelne Installation hinaus und habe daher ein Ticket beim H2-Support erstellt. Ich benötige Informationen/Unterstützung beim Setup und möchte mein Projektvorhaben vorstellen. Ein Telefonanruf wäre deshalb klasse!

Beste Grüße,

Wheeldat avatar Jan 17 '21 03:01 Wheeldat

Hallo @Wheeldat,

bei welcher Schritt bist du nicht mehr weiter gekommen. Nach den ersten Anfragen haben wir das Wiki entsprechend angepasst so dass es mit den neuesten Anforderungen zu installieren ist. Der ODC kann auch in Kombination mit dem XAMPP installiert werden.

Neu dazu kam, dass jetzt ein SSO (Single Sign On Server) benötigt wird. Wir empfehlen dafür Keycloak mit OAuth. Ab der Version 2.X gibt es keine eigene Benutzerverwaltung im ODC.

holzi1005 avatar Jan 17 '21 10:01 holzi1005

Hi @meckcamp, der Default User ist nur als Platzhalter für die Datenbank damit diesem Default Werte zugewiesen werden können. Mit diesem kannst du dich nicht anmelden, da dieser keine "echtes" Passwort hat. Das Usermanagement läuft über FOSUser. Daher musst du einen Benutzer mit dem FOS Bundle erstellen und das geht über die Console.

php bin/console fos:user:create php bin/console fos:user:enable <username>

Danach musst du dich noch zu einem Team/Mandanten hinzufügen. Erstelle dafür am besten noch ein neues Team in mySQL und wähle dieses in der Tabelle fos_user Team und Admin Team aus. Danach kannst du dich einloggen. Aktuell die Erstellung von Teams/Mandanten noch nicht direkt im ODC.

@holzi1005 ich habe das Protal usw. am laufen. Ich kann mich anmelden über KeyCloak, aber ich kann den Benutzer nicht anlegen und das Team fehlt mir auch.

In dem Ordner kann den Behehl nich aufrufen... root@XXXXXXX:/var/www/open-datenschutzcenter# php bin/console fos:user:create

=> There are no commands defined in the "fos:user" namespace.

Mfg. Markus

LembkeM avatar Aug 12 '21 12:08 LembkeM

Hi @LembkeM die Anweisung mit dem fos:user ist veraltet und wird zusammen mit dem KeyCloak Server nicht mehr benötigt/vorhanden.

Die User werden automatisch beim ersten Login über den KeyCloak angelegt. Damit der erste User mit einem Team verbunden werden kann, muss das Team (Mandant) von Hand über die Datenbank angelegt werden und dem User als team_id und admin_user_id hinzugefügt werden. der Admin kann dann weitere User automatisch über die Weboberfläche hinzufügen.

holzi1005 avatar Aug 12 '21 13:08 holzi1005

Hi @LembkeM die Anweisung mit dem fos:user ist veraltet und wird zusammen mit dem KeyCloak Server nicht mehr benötigt/vorhanden.

Die User werden automatisch beim ersten Login über den KeyCloak angelegt. Damit der erste User mit einem Team verbunden werden kann, muss das Team (Mandant) von Hand über die Datenbank angelegt werden und dem User als team_id und admin_user_id hinzugefügt werden. der Admin kann dann weitere User automatisch über die Weboberfläche hinzufügen.

Hi @holzi1005 , vielen Dank, hat funktioniert. Ich hatte das Team angelegt, aber die Admin Zuordnung und User Zuordnung nicht gemacht. Evtl. könntest Du hier den SQL Insert in der Doku hinzufügen, damit dass klarer ist.

Nun habe ich nur noch ein Problem mit den Default werten aus der Doku... Ich gehe davon aus, dass damit die folgenden Tabellen gemeint sind.

Default Werte für die TOMs und die Auditfragen

AuditTomZiele                                        => audit_tom_ziele
AuditTomStatus                                      => audit_tom_status

Default Werte für die Datenweitergabe und Auftragsverarbeitung

DatenweitergabeGrundlagen                 => datenweitergabe_grundlagen
DatenweitergabeStand                           => datenweitergabe_stand

Default Werte für das Verzeichnis für Verarbeitungstätigkeiten

VVTGrundlagen                                      => vvtgrundlage
VVTPersonen                                          => vvtpersonen
VVTRisiken                                             => vvtrisiken
VVTStatus                                              => vvtstatus

LembkeM avatar Aug 13 '21 06:08 LembkeM

Ab Version 2.X können diese Werte auch im Admin Bereich des ODCs pro Mandant (Team) erstellt und bearbeitet werden. Wenn bestimmte Werte in allen Mandanten vorhanden sein sollen, müssen diese in die von Ihnen genannten Tabellen eingetragen werden aber mit der team_id = null

holzi1005 avatar Aug 13 '21 07:08 holzi1005

Hallo @Gezeichneter,

vielen Dank für deine Rückmeldung. Hast du die Dockerinstallation ausprobiert?

Ist die software intern oder extern betrieben? Der ODC greift nach dem Login per HTTPS auf den Keycloak Server zu. Handelt es sich um eine interne Domain, kann es sein das der ODC entweder keinen DNS findet und deshalb den KC nicht auflösen kann, oder das Zertifikat das KCs ist Selbs signiert und der ODC kann das Zertifikat nicht verifizieren.

Als erstes bitte mal als Admin in den ODC einloggen und dort schauen ob der Hacken bei dem entsprechenden Client bei mutual TLS gesetzt ist. Das Problem hatten wir bei einem anderen User.

image image

Viele Grüße

holema avatar Dec 21 '23 12:12 holema

Hallo @Gezeichneter,

die gesamte Installation kannst du löschen indem du docker-compose down -v eingibst. dann werden auch die Volumes gelöscht.

holema avatar Dec 21 '23 14:12 holema

Hallo @Gezeichneter,

Es freut mich das es jetzt so gut geklappt hat.

inzwischen geht das anlegen eines Teams über die GUI. Kurzer Spoiler: Die neue UI, die gerade im development Branch gemergt wurde ist von einem anderen Stern ;)

Sollte ende des Jahre auch in den Master Branch kommen. image

Viel Spaß mit dem ODC

holema avatar Dec 21 '23 15:12 holema