Inhoud

Inloggen

Alle inloghandelingen worden apart gelogd op de webserver. Het wegschrijven van deze log kan een probleem op zichzelf zijn (schijf vol, server uit de lucht). Indien dit het geval is dan verschijnt de mededeling: Foutcode: Log aanmaken mislukt.

Hieronder de programmaflow van de inlogprocedure en de instellingen die daarop van invloed zijn.

N.b. De hieronder beschreven programmaflow geldt NIET voor het inloggen middels Single Sign On. Zie pagina Single Sign On voor de inlogvereisten Single Sign On en benodigde instellingen.

1. Kloppen login en wachtwoord?

De login (niet case sensitive) wordt vergeleken met tbmedewerkers dvloginnaam. Het wachtwoord (case sensitive) wordt omgezet in bcrypt met het aantal costs van het opgeslagen gecrypte password in medewerkerskolom pass (tbmedewerkers.dvpasswcrypt) en hiermee vergeleken. Geen match dan wordt er opnieuw om gevraagd met een tussenpozen van de instelling Getal1 bij Sectie: Logon en Item: WachtAantalMilliseconden (default 3000).

2. Mag de inlogger gebruik maken van de browser-versie

De medewerkerskolom 1=desktop, 2=browser, 3=beide (Tbmedewerkers.dnmaginapp) moet de waarde 2 of 3 hebben: zo niet dan zijn er onvoldoende rechten. De medewerker moet ook verbonden zijn aan een rechtengroep die op minimaal één van de modules (bouw/sloop, horeca, handhavingen, APV/overig/ milieu/gebruik/ info, omgeving of inrichtingen) kijkrechten heeft.

3. Is de medewerker nog in dienst?

Wanneer tbmedewerkers.ddvervaldatum < = vandaag dan is deze vervallen en mag niet inloggen.

4. Is het wachtwoord tijdelijk uitgegeven en is die datum verstreken?

Dit is het geval indien op de medewerkerskaart de kolom (tijdelijk) geldig tot (tbmedewerkers.ddlockedfrom) is gevuld met een datum die kleiner is dan de systeemdatum. Er volgt een mededeling Geldigheid tijdelijke inlog verstreken; neem contact op met de beheerder.

5 Is het wachtwoord verlopen?

Dit is het geval indien:

Zo ja dan wordt om nieuw wachtwoord gevraagd. Dit wordt gecontroleerd op de volgende elementen:

Indien mogelijk geeft het programma een hint wanneer een nieuw wachtwoord wordt afgekeurd. Bij niet voldoende complexiteit is dat:Password te voorspelbaar mogelijk gevold door één van onderstaande teksten:

Het nieuwe valide password wordt omgezet in bcrypt met het aantal costs van instelling Getal1 van Sectie: Logon en Item: bcrypt_costs (default 10).

6. Tijdelijkheid wachtwoord opheffen?

Indien:

dan zal op de medewerkerskaart de kolom (tijdelijk) geldig tot (tbmedewerkers.ddlockedfrom) worden leeggemaakt.

7. Is 2 factor ingesteld?

2-factor is ingesteld indien:

Is dit het geval dan wordt de device van de inlogger als cookie gecontroleerd met tbmedewdevices.dvunlockcookie.

Is de device niet bekend of verlopen (waarbij timestamp wordt vergeleken met tbmedewdevices.ddeunlockcookie + het aantal dagen van instelling Getal1 van Sectie: Device en Item: Unlock_Cookie_MaxDagenSindsCreatie (default 365) dan wordt om een unlock pincode gevraagd.

Deze unlockcode wordt tijdelijk opgeslagen in tbmedewekers.dvdeviceunlockcode en de timestamp waarop dat is gebeurd wordt vastgelegd in tbmedewerkers.ddpinunlockcode.

Bovendien wordt de unlockcode:

Voor e-mailinstellingen zie het hoofdstuk: E-mail SMTP instellingen. Standaard wordt het emailadres van de betreffende medewerkerskaart als afzender genomen voor het verzenden van de unlockcode. Deze afzender kan worden overruled door de inhoud van de kolom Tekst van de instelling Sectie: Logon en Item: AfzenderAdres.

Voor sms-instellingen zie het hoofdstuk: SMS.

Voor medewerkers zie het hoofdstuk: Medewerkers. Voor vrijstellen 2-factor op basis van IP-adres zie IP-ranges.

De inlogger heeft dan tbmedewerkers.ddpinunlockcode + het aantal uur van de instelling Getal1 van Sectie: Device en Item: Unlock_Pin_MaxUurSindsCreatie (default 1) de tijd om de unlockcode door te voeren.

Bij succes EN indien het attribuut op de medewerkerskaart van de inlogger Verboden om device op te slaan NIET is aangevinkt, dan wordt de device toegevoegd of vernieuwd in de tabel tbmedewdevices met een nieuwe tbmedewdevices.ddeunlockcookie. Als het programma deze unlockcookie niet kan of mag opslaan dan zal bij 2-factor authenticatie altijd om een nieuwe unlockcode worden gevraagd.

Indien OpenWave wordt gebruikt op dezelfde device vanuit twee verschillende browsers, dan ziet het programma dit als twee verschillende apparaten (cookies worden per browser opgeslagen).

8. Afvinken inlogverklaringen

Indien een inlogverklaring is klaargezet (zie: Loginverklaringen) waarvan:

dan zal deze verklaring aan de betrokken medewerker die inlogt getoond worden, mits

De medewerker zal in dat geval de verklaring moeten aanvinken alvorens de toegang tot het openingsportaal wordt verleend. Er wordt een regel aangemaakt in tbmwloginverklaringen met als afvinkdatum de systeemdatum. Indien de regel al bestond in tbmwloginverklaringen en de verklaring was getoond vanwege het verlopen van de afvinkdatum (datumgelezen) op die regel, dan zal enkel die datum worden aangepast.

Na het afvinken zal het programma opnieuw kijken of er (nog) een verklaring klaar staat en deze tonen.

9. Maak sessie

Bij succesvol inloggen wordt voor de inlogger een nieuwe sessie aangemaakt die een instelbare periode geldig blijft. Is die periode afgelopen dan moet de inlogger opnieuw inloggen. Het gaat om twee instellingen in tbinitialisatie:

In de beheertabel tbsession wordt bij het inloggen per medewerker een kaart gemaakt met de uitgetrokken sessie-id en het tijdstip dat de kaart gecreëerd is (ddcreated). Elke keer dat de medewerker een API-aanroep in OpenWave doet, wordt de kolom ddinvoked overschreven met het tijdstip van dat moment (om nodeloze schrijfacties te vermijden gebeurt dit slechts wanneer het oude tijdstip 10 minuten of langer geleden is). Deze 10 minuten zijn niet instelbaar.

De instelling MaxUurSindsAanroep wordt dus vergeleken met tbsession.ddinvoked.

De instelling MaxUurSindsCreatie wordt vergeleken met ddcreated.

Waarschuwing

Let op: Wanneer Single Sign-On ingesteld staat dan dient men de geldigheidsduur van een sessie van een gebruiker in te stellen op de Single Sign-On server zelf. De instellingen op de Single Sign-On server overrulen deze instellingen.

Nieuwe inlogmethode: getAccess

Er is een nieuwe inlogmethode: getAccess waarbij de huidige inlogmethode in een nieuw jasje is gestoken met het oog op toekomstige uitbreidingen van OpenWave. De beschreven programmalogica op deze pagina is van toepassing op zowel de huidige inlogmethode als de nieuwe getAccess methode. Hierbij zijn de volgende uitzonderingen:

Voor de werking van deze inlogmethode moeten de volgende instellingen van toepassing zijn:

Een overige instelling voornamelijk voor de esthetiek:

Niet alleen geldig voor de nieuwe inlogmethode maar ook voor de huidige inlogmethode is dat de volgende instellingen benodigd zijn voor het vullen van de gebruikersnaam en wachtwoord vergeten mails aan de gebruiker: