Tutorials

How-To´s und mehr!

SSO mit nginx im Eigenbau

Veröffentlicht am

Dieses Tutorial soll dabei helfen ein simples und rudimentäres SSO-System zu implementieren, bei dem nginx selbst die Authentifizierung übernimmt, hierbei ist der Login nur einmal für verschiedene Anwendungen möglich. Vorraussetzungen Für das Tutorial benötigst du PHP 7+ sowie nginx mit aktivierem Auth Modul Login-System mit PHP vorbereiten Zuerst benötigen wir eine öffentlich erreichbare Domain zum Login. Ich habe mich hierbei für folgende Struktur entschieden: public_html Document root |--- www Website root |--- index.php Einstiegspunkt |--- access_denied.php Fehler bei unzureichender Berechtigungen |--- change_password.php Self-Service zur Passwortänderung |--- headless_check.php Check für Nginx Loginstatus |--- login.php Login-Formular und Logik |--- logout.php Logout und deren Logik |--- util.php Hilfsfunktionen util.php Zuerst einmal die Hilfsfunktionsdummies: access_denied.php Diese Datei kann nach komplett eigen gestaltet werden, hier reicht eine statische Seite im Normalfall aus. headless_check.php Diese Datei wird aufgerufen, wenn nginx den Loginstatus abrpüft, hierbei muss entsprechend ein 403 - Access Denied, 200 - für Login ok und 401 für nicht angemeldet zurückgegeben werden. Ein optionaler Gruppencheck wird über den X-Groups-Header veranlasst der mit Komma getrennt die unterschiedlichen Gruppennamen enthält. login.php und logout.php Diese beiden Seiten können grundsätzlich auch komplett eigen gestalet werden, sie werden entsprechend über die index.php aufgerufen. Login Hier muss entsprechend die Hilfsfunkion für die Authentifizierung aufgerufen werden und somit der Loginstatus gesetzt. Hier kann auch entsprechend eine Zurückleitung auf die vorherige Seite erfolgen. Für den Loginstatus werden entsprechend folgende Werte aus $_SESSION berücksichtigt: Key…

Weiterlesen …

PHP-Crashkurs

Veröffentlicht am

Vorwort Nachdem im Internet ziemlich viel komische Tutorials und schlechte YouTube-Videos kursieren und es viele PHP-Entwickler gibt, die schlecht entwickeln, hab ich mich entschieden einfach mal nen kleinen Crashkurs zu schreiben. Ziel ist es, nach diesem kleinen Crashkurs eine Ahnung zu haben wie PHP funktioniert und damit sauber arbeiten zu können. Zudem weißt du danach welchen Quellen du vertrauen solltest und welchen eher nicht. Hierzu werde ich aber nochmal irgendwann einen seperaten Post verfassen und dann hier verlinken. Bei dem Crashkurs hier gehe ich davon aus, das du einen PC bedienen kannst und der englischen Sprache mächtig bist. Ein halbwegs solides Verständnis für PCs ist auch von Vorteil. Geschichsstunde Zuerst einmal etwas Historisches. Nein, ich fange jetzt nicht wieder bei Lochkarten an. PHP wurde 1995 von Rasmus Lerdorf geschaffen. Ursprünglich war es ein Set von Perl-Scripts für die Erfassung von Zugriffen auf Webauftritte. Mit der Zeit war es ein riesiger Haufen von Skripts. Also hat er alles in C umgeschrieben um mit Datenbanken zu interagieren usw. Diesen Code stellte er dann frei zur Verfügung (heute würde man sagen Open Source). 1997 gabs dann nochmal ne kleine Überarbeitung allerdings immer noch ein One-Man-Project. Im Laufe der Zeit wurde das ganze dann vom One-Man-Project zum Community-Projekt. PHP war hierbei nicht wirklich der schnellste seiner Art. Mit den verschiedenen Versionen ergaben sich dann aber Performanceverbesserungen vom Vielfachen der Vorgängerversion. So das es heute durchaus mit anderen Sprachen wie Java und .NET konkurrieren kann. Wer sich das ganze nochmal im Detail reinpfeifen will, hier…

Weiterlesen …