So implementieren Sie IPWorks Auth PHP: Schritt-für-Schritt Anleitung 2024
Über 1,5 Millionen Entwickler, Systemadministratoren und Unternehmen weltweit vertrauen bereits auf IPWorks Auth PHP für ihre Authentifizierungslösungen.
Dies ist jedoch keine Überraschung, denn sichere Benutzerauthentifizierung ist für moderne Webanwendungen unverzichtbar. Dabei unterstützt IPWorks Auth verschiedene Protokolle wie OAuth, RADIUS und Kerberos, während es gleichzeitig die Erstellung und Verschlüsselung von JSON Web Tokens (JWT) ermöglicht.
Darüber hinaus bietet diese seit 1998 bewährte Lösung eine nahtlose Integration in Web-, Desktop- und mobile Anwendungen. Die neueste Version von Juni 2024 macht es Entwicklern noch einfacher, robusten Zugriffsschutz für ihre Anwendungen zu implementieren.
Diese Schritt-für-Schritt-Anleitung zeigt, wie man IPWorks Auth PHP effektiv einrichtet und dessen umfangreiche Sicherheitsfunktionen optimal nutzt.
Grundlegende Einrichtung von IPWorks Auth
Die Installation von IPWorks Auth PHP erfolgt zunächst durch das Kopieren der entsprechenden PHP-Erweiterung aus dem ext-Verzeichnis in das PHP-Erweiterungsverzeichnis des Zielsystems. Anschließend muss die php.ini-Datei angepasst werden, um die Erweiterung einzubinden.
Für die grundlegende Konfiguration stehen verschiedene Authentifizierungsmechanismen zur Verfügung. Dabei unterstützt IPWorks Auth sowohl die Active Directory-Authentifizierung mit Kerberos 5.0 als auch flexible LDAP-Komponenten für Benutzersuche und -verwaltung.
Die Bibliothek ermöglicht außerdem die Implementierung von One-Time-Passwords (OTP). Hierfür stehen zwei Algorithmen zur Verfügung:
-
HOTP (HMAC-Based One-Time Password) gemäß RFC 4226
-
TOTP (Time-Based One-Time Password) nach RFC 6238
Besonders hervorzuheben ist die thread-sichere Ausführung kritischer Komponenten. Dies gewährleistet eine zuverlässige Leistung auch bei hoher Systemlast.
Für die Lizenzierung unter Linux/macOS muss zunächst eine Aktivierung durchgeführt werden. Dies geschieht über http://lic.nsoftware.com/lic/?prod=IAPFA&grtk=true, wobei der Produktschlüssel eingegeben werden muss. Der generierte RuntimeLicense-Wert wird anschließend der Komponente zugewiesen:
$component->setRuntimeLicense("Generierter_Wert");
Die Bibliothek bietet darüber hinaus umfangreiche Dokumentation sowie Beispielanwendungen. Entwickler profitieren von einer detaillierten Referenzdokumentation und einer umfassenden Online-Wissensdatenbank.
Für die Fehlerbehebung steht kostenloser E-Mail-Support zur Verfügung. Dieser deckt Lizenzierungs- und Installationsfragen sowie andere produktbezogene Themen ab.
Nach der Installation können die Komponenten ohne zusätzliche Lizenzgebühren in Anwendungen eingebunden und verteilt werden. Die Lizenz ist dabei dauerhaft gültig und beinhaltet ein einjähriges Abonnement für Updates.
OAuth2-Authentifizierung implementieren
Die OAuth2-Implementierung in IPWorks Auth PHP ermöglicht eine flexible Authentifizierung für verschiedene Anwendungsszenarien. Zunächst müssen Entwickler ihren Client bei dem gewünschten OAuth2-Dienst registrieren, um ClientId und ClientSecret zu erhalten.
Das Framework unterstützt mehrere Client-Profile für unterschiedliche Anwendungsfälle:
-
Desktop-Anwendungen (Application)
-
Server-seitige Webanwendungen (WebServer)
-
Geräte ohne Browser (Device)
-
Mobile Apps (Mobile)
-
Browser-basierte JavaScript-Apps (Browser)
-
Server-zu-Server JWT-Authentifizierung
Für die Konfiguration stehen wichtige Parameter zur Verfügung:
-
AccessTokenExp: Definiert die Gültigkeitsdauer des Access Tokens in Sekunden
-
AuthorizationURL: Spezifiziert die URL für die Benutzerauthentifizierung
-
BrowserResponseTimeout: Legt die maximale Wartezeit auf Browser-Antworten fest
Bei der WebServer-Implementierung wird folgender Ablauf verwendet:
-
ClientProfile auf "cfWebServer" setzen
-
ClientId, ClientSecret sowie Server-URLs konfigurieren
-
ReturnURL für die Weiterleitung nach Authentifizierung festlegen
-
GetAuthorizationURL aufrufen und Benutzer zur generierten URL weiterleiten
Darüber hinaus bietet das Framework zusätzliche Sicherheitsfunktionen:
-
Unterstützung für Proof Key for Code Exchange (PKCE)
-
Validierung von Access Tokens über TokenInfoURL
-
Konfigurierbare JWT-Parameter für Server-zu-Server-Authentifizierung
Für die Device-Flow-Implementierung wird zunächst ein Benutzercode vom Server angefordert. Anschließend authentifiziert sich der Benutzer über einen separaten Browser, während die Anwendung den Server in konfigurierbaren Intervallen nach dem Access Token abfragt.
Die Mobile-Flow-Implementierung ähnelt dem Application-Profil, erfordert jedoch eine manuelle Browser-Steuerung über das LaunchBrowser-Event. Dies ermöglicht eine bessere Integration in mobile Anwendungen.
Für Server-zu-Server-Szenarien steht die JWT-Authentifizierung zur Verfügung. Hierfür werden zusätzliche Konfigurationsparameter wie JWTIssuer, JWTAudience sowie Zertifikatseinstellungen benötigt.
JWT-Integration für sichere Authentifizierung
IPWorks Auth PHP bietet eine leistungsstarke JWT-Komponente für die sichere Authentifizierung von Webanwendungen. Diese Komponente ermöglicht das Signieren, Verschlüsseln, Entschlüsseln und Verifizieren von JSON Web Tokens.
Die JWT-Implementierung unterstützt verschiedene Signaturalgorithmen:
-
HMAC für symmetrische Verschlüsselung
-
RSA für asymmetrische Verschlüsselung
-
ECDSA für elliptische Kurven-Kryptographie
Für die Signierung eines JWT müssen zunächst die Claims über die Claim-Eigenschaften festgelegt werden. Daraufhin wird die Sign
-Methode aufgerufen, die einen kompakten serialisierten JWT-String erzeugt. Dieser Token enthält anschließend die verschlüsselten Benutzerinformationen.
Bei der Verifizierung eines empfangenen JWT wird zunächst der EncodedJWT
-Parameter auf einen gültigen Token gesetzt. Anschließend muss der entsprechende Schlüssel oder das Zertifikat für die Überprüfung bereitgestellt werden. Falls diese nicht im Voraus bekannt sind, kann der KeyId
-Parameter des SignerInfo
-Events zur Identifizierung verwendet werden.
Besonders wichtig ist die Verwendung sicherer Schlüssel. Kurze oder schwache Schlüssel können zu Account-Übernahmen, Privilegien-Eskalation und Datenlecks führen. Außerdem sollten keine sensiblen Daten im JWT-Payload gespeichert werden, da dieser nur Base64-kodiert und nicht verschlüsselt ist.
Die Kommunikation sollte grundsätzlich über HTTPS erfolgen. Sobald ein Benutzer seine Anmeldedaten erfolgreich eingegeben hat, wird das JWT mit dem Schlüssel zurückgegeben und lokal gespeichert.
Für die Implementierung stehen verschiedene Methoden zur Verfügung:
-
AddClaim
zum Hinzufügen benutzerdefinierter Claims -
Parse
zum Analysieren empfangener Tokens -
Reset
zum Zurücksetzen der Komponente -
Encrypt
für die Verschlüsselung mit ECDH, RSA oder AES
Die Komponente unterstützt darüber hinaus die Komprimierung von Tokens sowie die Verwaltung von Header-Parametern. Für die Verschlüsselung wird ein zufälliger Schlüssel generiert, der zunächst den Inhalt und anschließend sich selbst mit dem spezifizierten Algorithmus verschlüsselt.
Systemanforderungen
Für eine erfolgreiche Implementierung von IPWorks Auth PHP müssen bestimmte technische Voraussetzungen erfüllt sein. Die Bibliothek unterstützt PHP-Versionen von 5.2 bis zur aktuellen Version 8.3. Dadurch können Entwickler sowohl ältere als auch moderne PHP-Anwendungen mit der Bibliothek entwickeln.
Die Komponenten sind plattformübergreifend einsetzbar und funktionieren auf Windows, Linux sowie macOS. Besonders hervorzuheben ist die Unterstützung verschiedener Entwicklungsumgebungen und Frameworks:
-
.NET-Unterstützung von Version 2.0 bis 4.8
-
.NET Core 3.1 sowie .NET 5, 6, 8 und 9
-
Xamarin und MAUI via .NET 6
Die Bibliothek wurde vollständig in C# entwickelt und bietet thread-sichere Komponenten für kritische Operationen. Darüber hinaus zeichnet sich IPWorks Auth durch minimalen Ressourcenverbrauch aus, während gleichzeitig eine robuste und zuverlässige Leistung gewährleistet wird.
Für Java-Entwickler steht Unterstützung ab JDK Version 1.7 zur Verfügung. Delphi-Entwickler profitieren von der Kompatibilität mit allen Versionen zwischen Delphi 6 und RAD Studio 12.
Die Bibliothek wurde umfassend getestet - sowohl intern durch das QA-Team als auch extern durch Kundeninstallationen. Dies summiert sich zu hunderttausenden Teststunden. Zusätzlich bietet IPWorks Auth:
-
Nahtlose Integration in Visual Studio
-
Umfangreiche Beispielanwendungen in C#
-
Detaillierte Produktdokumentation
Für Python-Entwickler steht Python 3 Unterstützung zur Verfügung. Die Active Directory-Authentifizierung erfolgt über Kerberos 5.0, während flexible LDAP-Komponenten für Benutzersuche und -verwaltung eingesetzt werden können.
Die Bibliothek enthält native Entwicklungskomponenten für alle unterstützten Plattformen und Technologien. Dies ermöglicht eine optimale Performance und nahtlose Integration in bestehende Entwicklungsumgebungen.
Sprache: Englisch
Betriebssystem: Windows
IPWorks Auth 2024 PHP Edition
Nutzen Sie unseren schnellen SMS-Service! Geben Sie beim Kauf Ihre Handynummer an und erhalten Sie Ihren Key direkt aufs Handy.
749,
99
€
*inkl. MwSt. Versandkostenfrei
Schneller Versand
Kostenloser Support
Direkte Onlineaktivierung
Rechtssicher lizenziert
Nutzen Sie unseren schnellen SMS-Service! Geben Sie beim Kauf Ihre Handynummer an und erhalten Sie Ihren Key direkt aufs Handy.
- Artikel-Nr.: SW12692

Dann frag unsere Experten
24 Stunden
für euch da!“