Projecten

Werk mee aan één van onze projecten

Projecten voor R&D en productontwikkeling

Bij Tools4ever werken we voor 100% aan eigen productontwikkeling op ons hoofdkantoor in Baarn. We doen geen softwareontwikkeling in opdracht van opdrachtgevers. Dus geen maatwerk, detachering, offshoring, etcetera.

HelloID is het nieuwste product van Tools4ever waarvan de ontwikkeling is gestart in 2015. HelloID draait grotendeels binnen Azure. HelloID is een multi tenant software product waarvan de software volledig door Tools4ever in Baarn wordt ontwikkeld. De komende tijd werken we aan de onderstaande onderdelen in HelloID.

Meer algemene informatie over HelloID kan je vinden op de productpagina van HelloID. Technische achtergrond informatie op de documentatiewebsite van HelloID. Ook is het mogelijk om allerlei whitepapers te downloaden op de resource pagina.

Wil je na kantoortijd een keer kennis komen maken en wellicht de software live te zien? Kom dan op een informele manier kennismaken.

Provisioning rule engine

De core business van Tools4ever is het automatiseren van user account beheer. Onze software zorgt ervoor dat als een nieuwe medewerker start voor een organisatie, dat deze nieuwe medewerker een user account (gebruikersnaam/wachtwoord) krijgt in de systemen waarvoor hij/zijn toegang nodig heeft. De provisioning rule engine is het belangrijkste onderdeel van dit proces. Organisaties willen graag zelf precies kunnen bepalen welke acties worden uitgevoerd als een medewerker start. Krijgt een nieuwe medewerker een Office365 E5 licentie of een traditionele Exchange email box?

Voor ons nieuwste cloud based Identity Management as a Service (IDaaS) product, HelloID, zijn we de rule engine aan het ontwikkelen. Deze engine bepaalt op basis van allerlei regels wie welk account krijgt, wie welke rechten krijgt en voor wie het weer ingetrokken moet worden. De rule engine moet robuust zijn, simpel om te configureren en zeer diverse vraagstukken aankunnen. Dit betekent enerzijds dat je de flexibiliteit van een script taal wilt hebben (b.v. powershell of javascript) en anderzijds via de userinterface voor gedefinieerde regels bij elkaar willen kunnen slepen. Als laatste wil je het overzicht kunnen bewaren als er veel regels worden toegepast. Wat is precies het resultaat als ik deze regel toepas? Op wie heeft het invloed? Bovenal is de performance een interessante uitdaging omdat er honderden regels voor miljoenen users continue toegepast worden. Omdat regels uit meerdere attributen bestaan, explodeert het aantal te maken vergelijkingen door het cartesisch product indien er geen slimme algoritmes worden toegepast.

Aan de rule engine wordt door meerdere teams gedurende enkele maanden gewerkt. Het is een multi discipliair project, met een sterke back-end compoment gebouwd in C# die volledig in Azure draait waarbij onder meer gebruik gemaakt wordt van Azure SQL & App services, Mongo DB (Atlas services), Dockers. Mirco Services, .Net core. De omgeving is volledig multi tenant. Omdat HelloID in de markt wordt weggezet als een standaard product, worden er erg hoge eisen gesteld aan de gebruikersvriendelijkheid. Omdat de rule engine hierin een sleutelrol vervult, is dit op GUI gebied een interessant project. Front end ontwikkeling vindtplaats in Angular 7/typescript icm Bootstrap.

Audit logging and adaptive actions

Een belangrijk onderdeel van provisioning is het kunnen volgen wat de provisioning engine precies doet. Je moet kunnen zien wat voor zaken zijn aangemaakt en voor wie. Je moet kunnen zien wat er eventueel mis is gegaan en waarom.

Voor het dagelijks beheer van HelloID betekent dit dat een beheerder een globaal overzicht wil hebben van de werkzaamheden van de engine. Mochten er zaken misgaan, dan moet de beheerder kunnen ‘inzoomen’ om precies te kunnen bepalen wat er misging en waarom. Daarnaast moet het mogelijk worden om op basis van patronen te kunnen bepalen of acties wel of niet correct zijn. Het kan bijvoorbeeld voorkomen dat er plotseling rechten worden ingetrokken van een paar honderd mensen, terwijl dit normaal gesproken maar voor een tiental gebeurt. Moet de engine wel of niet doorgaan? Moet er toestemming aan de beheerder gevraagd worden om door te gaan?

HelloID infrastructure

HelloID is een cloud oplossing van Tools4ever welke grotendeels in de Microsoft Azure cloud draait. Om wereldwijd grote hoeveelheden gebruikers (10.000.000+) goed aan te kunnen is het van groot belang dat HelloID opgedeeld is in meerdere (micro) services. Nieuwe features moeten op basis van microservices opgezet worden; daarnaast moeten een aantal bestaande features opgedeeld worden voor zover dat nog niet is gebeurd. Waaruit bestaan deze services? Hoe communiceren ze met elkaar? Maken ze gebruik van een gedeelde database?

Als je werkt aan de HelloID infrastructuur, dan ben je continue bezig met het zoeken naar nieuwe technologieën om de dienst zo robuust mogelijk te maken. MongoDb als als database? Cosmos of Atlas? Allemaal vragen die beantwoord moeten worden.

Interesse in een vacature of wil je kennismaken?

Sirone is houdt zich bezig met recruitment.Wil je solliciteren op een vacature of wil je eerst weten wat Tools4ever voor jou kan betekenen? Neem dan contact met mij op.

Sirone Immink 
Bel of app: 06 191 969 56
Mail: s.immink@tools4ever.com