Enjyn Auth Partner Richtlinien
Enjyn Auth Partner Richtlinien
Diese Dokumentation beschreibt alle Compliance-Anforderungen und Implementierungsrichtlinien für Partnerseiten, die das Enjyn Auth System (Single Sign-On) nutzen möchten. Die Einhaltung dieser Richtlinien ist Voraussetzung für die Zulassung und den fortlaufenden Betrieb im Enjyn Auth Netzwerk.
Kritische Anforderungen (Zulassungsvoraussetzung)
Diese Anforderungen sind absolut zwingend für die Zulassung im Enjyn Auth Netzwerk. Ohne vollständige Implementierung ist eine Zulassung nicht möglich.
1. DSGVO-konforme Account-Löschung
auth-del.php Datei muss implementiert werden, um die Datenschutzkonformität zu gewährleisten. Dies ist eine rechtliche Anforderung nach DSGVO.
Bei Account-Löschungen müssen alle mit dem Nutzer verbundenen Daten vollständig gelöscht werden:
- Alle gespeicherten Enjyn-Nutzerdaten
- Zusätzliche Service-spezifische Daten
- Verknüpfte Dateien und Uploads
- Log-Einträge mit Personenbezug
- Cache-Daten und Session-Informationen
2. HTTPS-Verschlüsselung
3. Datenschutzerklärung
Bei jedem Compliance-Audit wird Ihre Datenschutzerklärung auf folgende Punkte geprüft:
- Vollständigkeit und Aktualität
- Korrekte Angabe der Datenverarbeitung
- Auflistung aller verwendeten Enjyn-Daten
- Rechtsgrundlagen nach DSGVO
- Kontaktdaten des Datenschutzbeauftragten (falls erforderlich)
Pflicht-Features & Navigation
Diese Features müssen korrekt implementiert werden, um eine konsistente Benutzererfahrung im gesamten Enjyn-Netzwerk zu gewährleisten.
1. Dynamische Navigation
Verhalten vor der Anmeldung:
- "Anmelden" Button: Führt zur lokalen Enjyn Login-Seite
- Kein "Enjyn-Konto" Button sichtbar
Verhalten nach der Anmeldung:
- "Enjyn-Konto" Button: Führt zur globalen Kontoverwaltung (Dashboard)
- "Anmelden" Button verschwindet
- Optional: "Lokal abmelden" Button
Beispiel-Implementation:
<?php if ($auth->isLoggedIn()): ?>
<!-- Angemeldet: Enjyn-Konto Button -->
<a href="<?= $auth->getAccountUrl() ?>" class="enjyn-account-btn">
Enjyn-Konto
</a>
<!-- Optional: Lokale Abmeldung -->
<a href="?local_logout=1" class="local-logout-btn">
Lokal abmelden
</a>
<?php else: ?>
<!-- Nicht angemeldet: Anmelden Button -->
<a href="<?= $auth->getLoginUrl() ?>" class="login-btn">
Anmelden
</a>
<?php endif; ?>
2. Lokale Abmeldung
Erlaubte Bezeichnungen für lokale Abmeldung:
- "Lokal abmelden"
- "Session beenden"
- "Service trennen"
Verbotene Bezeichnungen:
- "Abmelden" (ohne Zusatz)
- "Logout"
- "Ausloggen"
Korrekte Implementation:
<?php
// Nur lokale Session löschen
if (isset($_GET['local_logout'])) {
// NUR lokale Session beenden
unset($_SESSION['enjyn_auth_token']);
// NICHT den globalen Cookie löschen!
// setcookie('auth_token', '', time() - 3600); // FALSCH!
// Zur aktuellen Seite zurück
header("Location: " . strtok($_SERVER['REQUEST_URI'], '?'));
exit;
}
?>
3. Vorgegebene Login-Seite verwenden
Erlaubte Anpassungen:
- Farben des Designs (CSS-Variablen)
- Projektname und Beschreibung
- Service-spezifische Features auflisten
- Datenschutzerklärung der Partnerseite verlinken
- Nicht benötigte Datentypen entfernen
Verbotene Anpassungen:
- Grundaufbau der Seite ändern
- Enjyn-Branding entfernen
- Datenabfrage vor Login-Klick
- Zusätzliche Eingabefelder hinzufügen
4. URL-Parameter bei Weiterleitungen
Bei jeder Weiterleitung zum Enjyn Auth System muss eine Rückkehr-URL mitgegeben werden:
// Login & Registrierung
https://auth.enjyn.de/login?redirect=https://shop.example.com/dashboard%2Ephp
// Kontoverwaltung
https://auth.enjyn.de/manage?from=https://shop.example.com/dashboard%2Ephp
Optionale Features & Erlaubte Funktionen
Diese Features können optional implementiert werden, um die Benutzererfahrung zu verbessern.
Datenabfrage und -speicherung
Wichtige Bedingungen:
- Alle verwendeten Daten müssen auf der Login-Seite aufgeführt sein
- Datenabfrage erst nach Login-Klick erlaubt
- Lokale Daten müssen bei Account-Löschung entfernt werden
Zusätzliche Service-Daten
// Nach erfolgreicher Authentifizierung
$userId = $auth->getId();
$email = $auth->getEmail();
// Eigene Daten hinzufügen
$db->query("INSERT INTO user_preferences (enjyn_id, email, theme, language)
VALUES (?, ?, ?, ?)", [$userId, $email, 'dark', 'de']);
Sicherheitseinstellungen anzeigen
$user = $auth->getUser();
if ($user['two_factor_enabled']) {
echo "✅ 2-Faktor-Authentifizierung aktiv";
} else {
echo "⚠️ 2-Faktor-Authentifizierung nicht aktiv";
}
if ($user['login_notifications']) {
echo "✅ Login-Benachrichtigungen aktiviert";
}
Admin-Zugang
Für Admin-Zugang stehen zwei Optionen zur Verfügung:
| Option | Beschreibung | Empfehlung |
|---|---|---|
| Enjyn-basiert | Admin-Zugang basierend auf Enjyn E-Mail-Adresse | ✅ Empfohlen |
| Separates System | Eigenes zweites Login-System für Admin-Accounts | ⚠️ Zusätzlicher Aufwand |
Implementation Guidelines
Login-Seite Anpassungen
Die Login-Seite muss mit folgenden Änderungen angepasst werden:
// 1. Projektname ändern
<h1 class="service-title">Ihr Projektname</h1>
// 2. Service-Beschreibung
<p class="service-description">
Ihre Service-Beschreibung hier.
</p>
// 3. Features auflisten
<li>Ihre Service-Features</li>
// 4. Datenschutzerklärung verlinken
<a href="https://ihre-domain.de/datenschutz" target="_blank">
Datenschutzerklärung
</a> von IHRE_FIRMA.
// 5. Nicht benötigte Datentypen entfernen
// Löschen Sie <li> Elemente, die Sie nicht benötigen
auth-del.php Implementation
Die Account-Löschung muss alle relevanten Daten berücksichtigen:
// 1. Session beenden
session_destroy();
// 2. Benutzer-Daten löschen
$stmt = $db->prepare("DELETE FROM users WHERE enjyn_id = ?");
$stmt->execute([$userId]);
// 3. Verknüpfte Daten löschen
$stmt = $db->prepare("DELETE FROM user_preferences WHERE enjyn_id = ?");
$stmt->execute([$userId]);
// 4. Dateien löschen
$userDir = "/uploads/user_" . $userId;
if (is_dir($userDir)) {
deleteDirectory($userDir);
}
// 5. Cache leeren
apcu_delete('user_' . $userId);
Intelligente Weiterleitungslogik
💡 Tipp: Wenn ein Benutzer bereits in der Browser-Session angemeldet ist, sollte er direkt zu geschützten Inhalten weitergeleitet werden.
<?php
// Prüfen ob Benutzer bereits angemeldet ist
if ($auth->isLoggedIn()) {
// Direkt zu geschützten Inhalten
header("Location: /dashboard");
exit;
} else {
// Zur Anmeldeseite mit Rücksprung
header("Location: " . $auth->getLoginUrl());
exit;
}
?>
Datenabfrage Best Practices
// FALSCH - Daten vor Login-Klick abrufen
// Das ist nicht erlaubt!
// RICHTIG - Daten nach Login-Redirect abrufen
if ($auth->isLoggedIn()) {
$user = $auth->getUser();
// Jetzt können Daten verwendet werden
}
Compliance & Überwachung
Regelmäßige Prüfungen
Enjyn führt regelmäßige Audits durch, um die Einhaltung aller Anforderungen zu gewährleisten. Der Audit-Prozess umfasst:
- Automatisierte Prüfung: Technische Implementierung und API-Compliance
- Manuelle Überprüfung: Design-Compliance und Benutzererfahrung
- DSGVO-Audit: Datenschutz und Löschfunktionalität
- Datenschutzerklärung-Prüfung: Vollständigkeit und Aktualität
- Bericht & Feedback: Bei Problemen: Ergebnisse und Verbesserungsvorschläge
Compliance-Checklist vor Go-Live
Vor der Freischaltung müssen alle folgenden Punkte erfüllt sein:
- ☐
auth-del.phpimplementiert und getestet - ☐ Dynamische Navigation korrekt implementiert
- ☐ Lokale Abmeldung korrekt implementiert (löscht nur lokale Session)
- ☐ Login-Seite korrekt angepasst
- ☐ HTTPS vollständig implementiert
- ☐ URL-Parameter korrekt verwendet
- ☐ Datenschutzerklärung vollständig und aktuell
- ☐ Intelligente Weiterleitung implementiert
- ☐ Datenabfrage erfolgt erst nach Login-Klick
Konsequenzen bei Verstößen
Bei wiederholten oder schwerwiegenden Verstößen gegen die Richtlinien werden stufenweise Maßnahmen ergriffen:
| Verstoß | Erste Warnung | Wiederholung | Schwerwiegend |
|---|---|---|---|
| Navigation falsch implementiert | 3 Tage Korrektur | 24h Korrektur | Sofortige Sperrung |
| Lokale Abmeldung löscht globalen Cookie | 24h Korrektur | Sofortige Sperrung | Sofortige Sperrung |
| Design-Abweichung | 7 Tage Korrektur | 3 Tage Korrektur | Sofortige Sperrung |
| Fehlende auth-del.php | 12h Korrektur | Sofortige Sperrung | Sofortige Sperrung |
| Datenschutzerklärung unvollständig | 7 Tage Korrektur | 24h Korrektur | Sofortige Sperrung |
| DSGVO-Verstoß | Sofortige Sperrung | Sofortige Sperrung | Sofortige Sperrung |
| Unerlaubte Datenabfrage | 12h Korrektur | Sofortige Sperrung | Sofortige Sperrung |
Zugang zum Enjyn Auth System
- Integrations-Dokumentation für Websites (PHP, JavaScript, etc.)
- Integrations-Dokumentation für native Apps (iOS, Android)
- Design-Vorlagen für Login-Fenster und Authentifizierungs-UI
- API-Zugangsdaten und Testumgebung
- Partner-Dashboard zur Verwaltung
Support & Kontakt
Für Fragen zur Implementation oder Compliance-Anforderungen stehen folgende Kanäle zur Verfügung:
- 📧 Kontaktformular: https://enjyn.de/kontakt
- 📧 E-Mail: Über die allgemeine Kontaktadresse erreichbar
💡 Tipp: Bei der Bewerbung beschreiben Sie bitte Ihr Projekt und den geplanten Anwendungsfall für das Enjyn Auth System. Dies beschleunigt den Freischaltungsprozess.