| + Tweefactorauthenticatie - DBOIS + | +|||
+
|
+
diff --git a/ADMIN_2FA_MANUAL.md b/ADMIN_2FA_MANUAL.md new file mode 100644 index 0000000..6238674 --- /dev/null +++ b/ADMIN_2FA_MANUAL.md @@ -0,0 +1,741 @@ +# DBOIS Tweefactorauthenticatie - Beheerdershandleiding + +## Inhoudsopgave + +1. [Introductie](#introductie) +2. [Installatie en Configuratie](#installatie-en-configuratie) +3. [Gebruikers Helpen met 2FA Setup](#gebruikers-helpen-met-2fa-setup) +4. [Veelvoorkomende Problemen Oplossen](#veelvoorkomende-problemen-oplossen) +5. [Gebruikers Deblokkeren](#gebruikers-deblokkeren) +6. [Best Practices](#best-practices) +7. [Veelgestelde Vragen](#veelgestelde-vragen) + +--- + +## Introductie + +### Wat is Tweefactorauthenticatie? + +Tweefactorauthenticatie (2FA) is een extra beveiligingslaag die vereist dat gebruikers twee vormen van identificatie opgeven bij het inloggen: +1. **Iets dat ze weten**: hun wachtwoord +2. **Iets dat ze hebben**: hun telefoon of e-mailaccount + +### Waarom 2FA Gebruiken? + +- **Bescherming tegen gestolen wachtwoorden**: Zelfs als iemands wachtwoord wordt gestolen, kan een aanvaller niet inloggen zonder toegang tot de tweede factor +- **Compliance**: Voldoet aan beveiligingsrichtlijnen en compliance-vereisten +- **Vertrouwen**: Gebruikers weten dat hun accounts beter beschermd zijn + +### Beschikbare 2FA Methodes + +DBOIS ondersteunt twee 2FA-methodes: + +1. **E-mail OTP (One-Time Password)** + - Gebruiker ontvangt een 6-cijferige code per e-mail + - Code is 10 minuten geldig + - Eenvoudig te gebruiken, geen extra app nodig + - Geschikt voor gebruikers die niet technisch onderlegd zijn + +2. **Google Authenticator** + - Gebruiker installeert een authenticator app op hun smartphone + - App genereert elke 30 seconden een nieuwe 6-cijferige code + - Werkt zonder internetverbinding + - Veiliger dan e-mail (geen afhankelijkheid van e-mailbeveiliging) + - Apps: Google Authenticator, Microsoft Authenticator, Authy, etc. + +--- + +## Installatie en Configuratie + +### Stap 1: Database Migratie Uitvoeren + +**BELANGRIJK**: Voer eerst een backup uit van uw database voordat u de migratie uitvoert! + +#### Optie A: Via Command Line + +```bash +# Navigeer naar de DBOIS directory +cd /pad/naar/dbois + +# Voer de migratie uit +mysql -u [gebruikersnaam] -p [database_naam] < application/migrations/001_add_two_factor_authentication.sql +``` + +Vervang: +- `[gebruikersnaam]` met uw MySQL gebruikersnaam +- `[database_naam]` met de naam van uw DBOIS database + +#### Optie B: Via phpMyAdmin + +1. Log in op phpMyAdmin +2. Selecteer de DBOIS database +3. Klik op de "SQL" tab +4. Open het bestand `application/migrations/001_add_two_factor_authentication.sql` in een teksteditor +5. Kopieer de gehele inhoud +6. Plak in het SQL venster van phpMyAdmin +7. Klik op "Go" of "Uitvoeren" + +#### Verificatie + +Controleer of de migratie succesvol was: + +```sql +-- Controleer nieuwe kolommen in users tabel +DESCRIBE users; + +-- U zou deze kolommen moeten zien: +-- two_factor_enabled +-- two_factor_method +-- two_factor_secret + +-- Controleer nieuwe tabel +SHOW TABLES LIKE 'user_otp_codes'; +``` + +### Stap 2: E-mail Configuratie Controleren + +Zorg ervoor dat de e-mailconfiguratie correct is ingesteld in `application/config/email.php`: + +```php +$config['protocol'] = 'smtp'; +$config['smtp_host'] = 'mail.uwdomain.nl'; +$config['smtp_user'] = 'noreply@dbois.nl'; +$config['smtp_pass'] = 'uw_wachtwoord'; +$config['smtp_port'] = 587; +$config['smtp_crypto'] = 'tls'; +$config['mailtype'] = 'html'; +$config['charset'] = 'utf-8'; +$config['newline'] = "\r\n"; +``` + +**Test de e-mailconfiguratie** door de wachtwoord-vergeten functie te gebruiken. + +### Stap 3: Link naar 2FA Instellingen Toevoegen + +Voeg een link toe in het gebruikersmenu zodat gebruikers hun 2FA kunnen beheren: + +Voorbeeld locatie: In uw hoofdnavigatie of gebruikersprofiel menu: + +```html +
| + |
+
+
|
+ + |
Schakel 2FA in om een extra beveiligingslaag aan uw account toe te voegen.
+Huidige methode:
+Ontvang een eenmalige code via e-mail bij elke inlogpoging.
+Gebruik een authenticator app zoals Google Authenticator of Authy.
+Scan deze QR-code met uw authenticator app:
+Of voer deze code handmatig in:
+ +Ontvang een eenmalige code via e-mail bij elke inlogpoging.
+Gebruik een authenticator app zoals Google Authenticator of Authy.
+