<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DkMHRHY7fCp7ImA9WhRVGE0.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388</id><updated>2012-01-17T13:47:15.804+01:00</updated><category term="VBScript" /><category term="PowerShell" /><category term="Schema" /><category term="ADSI" /><category term="Exchange" /><category term="LDAP" /><title>Arnout van der Vorst  - Active Directory Identity Management</title><subtitle type="html">Active Directory, Identity Management, User Provisioning, Exchange, VBScript and PowerShell tips &amp;amp; tricks</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://arnoutvandervorst.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>102</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/ArnoutVanDerVorst" /><feedburner:info uri="arnoutvandervorst" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;C0EDSHY6eCp7ImA9WhRRFUo.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-1843759845338385359</id><published>2011-11-29T13:57:00.001+01:00</published><updated>2011-11-29T14:01:19.810+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-29T14:01:19.810+01:00</app:edited><title>De vooroordelen van Single Sign On</title><content type="html">&lt;br /&gt;
Veel IT managers en Security Officers zijn terughoudend als het gaat om het implementeren van een Single Sign On (SSO) oplossing, hoewel de voordelen van SSO duidelijk zijn. Namelijk onder andere gebruikersgemak voor de eindgebruiker en minder wachtwoord reset calls naar de helpdesk. De terughoudendheid ten aanzien van SSO wordt in de hand gewerkt door een aantal vooroordelen over SSO.&lt;br /&gt;&lt;br /&gt;Een vooroordeel is bijvoorbeeld dat het toepassen van SSO druk legt op security, omdat met maar één login het gehele applicatielandschap open staat. Dit lijkt inderdaad een risico, maar de kans dat eindgebruikers de enkele logingegevens die zij nodig hebben voor SSO op een briefje onder hun toetsenbord bewaren is veel kleiner dan de circa twaalf wachtwoord- en username combinaties die zij nodig hebben zonder SSO.&lt;br /&gt;&lt;br /&gt;Een tweede vooroordeel is dat een SSO implementatie een langdurig proces is. Vaak is een SSO implementatie onderdeel van een breder security beleid, waarbij veel vragen moeten worden beantwoord. Dit zorgt ervoor dat de daadwerkelijke implementatie naar de achtergrond wordt verschoven. Echter, SSO kan ook al heel kleinschalig ingestoken worden door bijvoorbeeld te beginnen met slechts 5 veelgebruikte applicaties.&lt;br /&gt;&lt;br /&gt;De hoge kosten van een SSO-oplossing geldt als het derde vooroordeel. De kosten kunnen echter beperkt gehouden worden door zich te richten op de meest kritische applicaties en die mensen die op veel verschillende applicaties moeten inloggen. Dan is de implementatie in prijs en complexiteit goed te overzien.&lt;br /&gt;&lt;br /&gt;Het laatste vooroordeel is dat organisaties denken dat zij geen SSO nodig hebben omdat zij complexe&amp;nbsp;wachtwoorden gebruiken om het netwerk te beveiligen. Maar complexe wachtwoorden zijn juist een oorzaak van onveilige situaties, zoals het bewaren van briefjes met wachtwoorden onder het keyboard. SSO biedt hiervoor een oplossing.&lt;br /&gt;&lt;br /&gt;
De vooroordelen die zijn ontstaan over SSO kunnen eenvoudig worden ontkracht. Oordeel zelf en &lt;a href="http://www.tools4ever.com/download/"&gt;download&amp;nbsp;een testversie van Enterprise Single Sign On&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-1843759845338385359?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/1843759845338385359/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=1843759845338385359" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/1843759845338385359?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/1843759845338385359?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/TxH3X1r97tA/de-vooroordelen-van-single-sign-on.html" title="De vooroordelen van Single Sign On" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2011/11/de-vooroordelen-van-single-sign-on.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU8ASHs7eip7ImA9WhZTEUQ.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-3484318275054448024</id><published>2011-03-15T14:51:00.002+01:00</published><updated>2011-03-15T15:04:09.502+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-15T15:04:09.502+01:00</app:edited><title>RBAC: sleutelrol, beheer en evolutie</title><content type="html">Veel organisaties zijn bezig met RBAC in meer of mindere vorm; verkenning, project, implementatie, vulling of beheer. We zien dat dit gestuurd wordt door normen als NEN7510, waarin voornamelijk staat beschreven dat je moet kunnen aantonen waarom iemand een autorisatie nodig heeft en hoe deze tot stand is gekomen. Inmiddels weten we dat RBAC niet een heilige graal is, maar dat veel implementaties stuk lopen door de te grote scope en complexiteit. We combineren RBAC liever met claim-based autorisaties op basis van workflow, waarbij de aanvragen voor extra autorisaties uit de organisatie komen en daar ook worden goedgekeurd en verwerkt.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Bij de implementatie van RBAC gaat het vaak om de vraag: hoe ver moet je gaan? Een goede start is om te beginnen bij de structuur van de organisatie en deze te verdelen in lagen. Als we een grote gemeente in Nederland (+- 7500 medewerkers) analyseren komen we tot de volgende verdeling:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;25 diensten&lt;/li&gt;&lt;li&gt;100 afdelingen&lt;/li&gt;&lt;li&gt;250 teams&lt;/li&gt;&lt;li&gt;500 functies&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;Bovenstaande gegevens gelden als we per organisatielaag een dekking van 80% willen realiseren. Er zijn immers veel meer dan 500 functies, maar deze zijn niet interessant voor RBAC, we zijn alleen op zoek naar de top 80%.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Op basis van bovenstaande gegevens kunnen we de RBAC matrix wat betreft rollen vullen voor deze 4 organisatielagen, elk item in de organisatielaag is dan een rol. Je kunt je afvragen of het nut heeft om de functie-laag te vullen, want dan heb je het meteen over 500 rollen. Vervolgens gaan we van bovenaf, dus startend bij dienst, invullen welke autorisaties bij elke rol horen. Op deze manier vult het systeem zich dus steeds verder aan.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Wat we echter hierbij missen is een unieke combinatie van een medewerker. We hebben bijvoorbeeld gedefinieerd wat elke medewerker mag bij dienst X en wat alle medewerkers met functie Y mogen, maar we missen op deze manier een medewerker met de combinatie van dienst X en functie Y. Dit noemen we de &lt;b&gt;sleutelrol&lt;/b&gt;. Een sleutelrol is dus een virtuele rol die altijd een combinatie is van organisatierollen. Bij de start van een RBAC systeem zijn deze rollen niet gedefinieerd, maar door links te leggen tussen organisatielagen komen deze rollen tot stand. Op deze manier is het mogelijk om licht te beginnen en het RBAC model steeds verder te laten evolueren.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-3484318275054448024?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/3484318275054448024/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=3484318275054448024" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/3484318275054448024?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/3484318275054448024?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/etBon8EQD3c/rbac-sleutelrol-beheer-en-evolutie.html" title="RBAC: sleutelrol, beheer en evolutie" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2011/03/rbac-sleutelrol-beheer-en-evolutie.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0EMRHs5fSp7ImA9Wx5UEEk.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-1731976293128899443</id><published>2010-10-14T11:33:00.002+02:00</published><updated>2010-10-14T11:48:05.525+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-10-14T11:48:05.525+02:00</app:edited><title>Single Sign On met Terminal Emulatie (VAX64, AS/400, Linux, SSH)</title><content type="html">We zien dat veel organisaties steeds bewuster bezig zijn met security, waarschijnlijk mede ingegeven door regelgeving zoals NEN7510 en ICT-audit trajecten. Naast het autorisatiebeheer binnen applicaties, waar we al verschillende oplossingen voor bieden zijn we ook actief op het authenticatie-vlak, namelijk met een Single Sign On (SSO) oplossing.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Voor eindgebruikers is SSO vaak een hulpmiddel waarmee je een behoorlijk stuk productiviteit kunt winnen; je spaart immers tijd bij het starten van applicaties. De impact op de servicedesk en op functioneel kan echter ook een stuk omlaag, de login van applicaties is namelijk verbonden aan het Active Directory account en kan dus niet meer worden vergeten of verkeerd worden ingetypt. Als iemand is ingelogd op Active Directory kan die persoon meteen transparant andere applicaties starten zonder de noodzaak om in te hoeven loggen op die applicatie.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Een SSO hulpmiddel wordt feitelijk alleen toegepast op applicaties die hun authenticatie niet via Active Directory regelen, maar een eigen interne user database hebben en dus ook zelf hun eigen wachtwoorden opslaan. Vaak gaat hem om grote bedrijfsapplicaties die een complexe security matrix hebben die om verschillende redenen niet in Active Directory is vastgelegd.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Traditioneel zijn applicaties die met Terminal Emulatie werken de lastigste om via SSO transparant te ontsluiten voor eindgebruikers. Een Terminal Emulatie pakket start meestal een telnet, putty of SSH client via de command prompt, waarna binnen het "DOS" window eerst een prompt komt voor een username en pas daarna voor het wachtwoord. Vaak kun je ook niet zien wat er wordt ingetypt en moet je maar hopen dat het goed is gegaan. De lastigheid is ook dat meerdere applicaties vaak van dezelfde Terminal Emulatie software gebruik maken, maar dat in de uitvoer van deze applicatie via een command parameter of config file de connectie met een ander systeem wordt gelegd. Dit maakt het lastig voor een SSO laag om te herkennen over welke applicatie het nu precies gaat.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Met onze SSO oplossing, Enterprise Single Sign On Manager (E-SSOM) zijn we inmiddels in staat om deze lastige applicaties allemaal netjes te ondersteunen. We hebben ervaring met een groot aantal type Terminal Emulatie clients en de manier van aanroepen van deze clients.  Zo hebben we logins naar VAX64, RedHat Linux en AS/400 voor de eindgebruiker transparant kunnen maken. Enkel het uitvoeren van een shortcut is voldoende voor een compleet ingelogde omgeving.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Meer weten?&lt;/div&gt;&lt;div&gt;www.tools4ever.com&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-1731976293128899443?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/nl/products/enterprise-single-sign-on-manager/" title="Single Sign On met Terminal Emulatie (VAX64, AS/400, Linux, SSH)" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/1731976293128899443/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=1731976293128899443" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/1731976293128899443?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/1731976293128899443?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/iHspS_maoTA/single-sign-on-met-terminal-emulatie.html" title="Single Sign On met Terminal Emulatie (VAX64, AS/400, Linux, SSH)" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/10/single-sign-on-met-terminal-emulatie.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkMHRHw8cCp7ImA9Wx5VFU4.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-5062211170413392890</id><published>2010-10-08T11:24:00.002+02:00</published><updated>2010-10-08T11:33:55.278+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-10-08T11:33:55.278+02:00</app:edited><title>AFAS koppeling met Lotus Notes adresboek</title><content type="html">Met UMRA doen we veel met koppelingen vanuit HRM-systemen naar de Active Directory om zo het user account beheer te automatiseren. UMRA is in staat om met 1 van de 130+ connectors gegevens te verzamelen die belangrijk zijn voor het aanmaken, muteren en uitschakelen van user accounts. We kunnen bijvoorbeeld uit een HRM systeem lezen welke gebruikers nieuw in dienst zijn of nog gaan komen, wijzigingen in functies, overplaatsingen naar andere afdelingen en alle andere gegevens die aan een dienstverband zijn gekoppeld.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;UMRA kan naast het user account beheer op Active Directory echter ook uitstekend worden toegepast op het bijwerken van het Lotus Notes adresboek. We komen regelmatig in aanraking met klanten die een Lotus Notes adresboek hebben met daarin verouderde gegevens over de medewerkers. Telefoonnummers die niet meer kloppen, handmatig ingevulde functies of afdelingen, en ook spelfouten in de namen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Via UMRA kunnen we eenvoudig en binnen 1 a 2 dagen het Lotus Notes adresboek koppelen aan HRM systemen zoals AFAS Profit of RAET Beaufort. Deze systemen bevatten altijd de meest up-to-date gegevens voor medewerkers, welke UMRA razendsnel kan synchroniseren naar het Lotus Notes adresboek. Aan de kant van Lotus Notes hoeft hiervoor niks te veranderen, UMRA kan zelf intelligent bepalen welke gegevens gemuteerd zijn, en dan alleen die specifieke gegevens bijwerken. Voor de IT organisatie kan UMRA gedetailleerde rapportage opleveren van welke gegevens op welke personen op welk tijdstip zijn gewijzigd. Ook kun je met UMRA instellen dat bepaalde gegevens niet 1:1 moeten worden overgezet naar Lotus Notes, maar bijvoorbeeld via een speciaal formaat. Lotus Notes vereist bijvoorbeeld dat je een rename actie doet op een person-document om de object-naam te wijzigen, of dat je een bepaalde waarde moet toevoegen aan een document-item. UMRA heeft volledige ondersteuning voor Lotus Notes, dus ook voor dit soort complexe operaties.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Meer weten?&lt;/div&gt;&lt;div&gt;www.tools4ever.com&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-5062211170413392890?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/nl/products/user-management-resource-administrator/features/phasethree/" title="AFAS koppeling met Lotus Notes adresboek" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/5062211170413392890/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=5062211170413392890" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/5062211170413392890?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/5062211170413392890?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/WliMZIYejpY/afas-koppeling-met-lotus-notes.html" title="AFAS koppeling met Lotus Notes adresboek" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/10/afas-koppeling-met-lotus-notes.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEINQHg4fip7ImA9Wx5WFUU.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-8185006023783670506</id><published>2010-09-27T11:55:00.004+02:00</published><updated>2010-09-27T12:16:31.636+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-27T12:16:31.636+02:00</app:edited><title>Oracle Identity Manager naar Active Directory provisioning</title><content type="html">Bij een grote Nederlandse universiteit kwam ik in aanraking met Oracle Identity Manager (voorheen Sun), dat werd gebruikt als Identity Store om alle identiteiten van medewerkers en leerlingen te beheren. Dit beheer omvat zowel de identificatie (naamgeving) als de autorisaties (toegang tot systemen). In feite is het een extra niveau in het beheer van identiteiten die ervoor zorgt dat een HRM systeem niet alle informatie hoeft te bevatten en dat je ook eenvoudig externen en tijdelijke krachten kunt toevoegen zonder deze via een tijdrovende procedure alsnog door P&amp;amp;O in moet laten schrijven.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De uitdaging was om vanuit dit systeem provisioning rechtstreeks op de Active Directory uit te voeren, waarbij Oracle Identity Manager leidend is in het aanleveren van alle gegevens zoals inlognaam, wachtwoord, afdeling, functie en kamernummer. De ICT-afdeling wil echter de provisioning wel aan een aantal regels laten voldoen, zoals plaatsing in OU, lidmaatschapen van groepen, opbouw en nesting van groepen en het gefaseerd uit dienst laten gaan van een account.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De provisioning vanuit Oracle Identity Manager naar Active Directory was mede door bovenstaande zaken niet een eenvoudige 1:1 vertaling van de Identity Store naar de Active Directory. We hebben voor de oplossing gekozen om Oracle Identity Manager alle relevante data te laten dumpen naar een intermediate SQL Server database, inclusief wachtwoord in versleutelde vorm. Vervolgens vergelijkt UMRA binnen enkele seconden deze database met Active Directory en voert de mutaties door. Deze mutaties kunnen complex zijn, zoals het (ver)plaatsen van accounts, het aanmaken van een complexe en geneste groep-structuur en het toewijzen van een versleuteld wachtwoord in Active Directory. Ook hebben we ervoor gezorgd dat bij een uit diensttreding het account eerst wordt gedeactiveerd en door een beperkte groep beheerders via een UMRA Formulieren schil kan worden opgeruimd inclusief alle resources.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Naast deze provisioning-slag hebben we er ook voor gezorgd dat er een "urgent" synchronisatie is tussen Oracle Identity Manager en Active Directory. Attributen die niet lang kunnen wachten op propagatie, zoals het wachtwoord, worden hierdoor binnen 30 seconden naar Active Directory doorgevoerd.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De vereisten om een dergelijk project uit te voeren zijn minimaal aan de kant van Oracle Identity Manager. Het is voldoende om alleen de attributen in ongeformatteerde form naar een database te laten schrijven. Oracle Identity Manager hoeft zich geen zorgen te maken over het bijhouden van transacties of het aanleveren van events welke data is gewijzigd, dit neemt UMRA allemaal uit handen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Meer weten?&lt;/div&gt;&lt;div&gt;www.tools4ever.com&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-8185006023783670506?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/nl/products/user-management-resource-administrator/" title="Oracle Identity Manager naar Active Directory provisioning" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/8185006023783670506/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=8185006023783670506" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8185006023783670506?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8185006023783670506?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/WK_JieG2ga4/oracle-identity-manager-naar-active.html" title="Oracle Identity Manager naar Active Directory provisioning" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/09/oracle-identity-manager-naar-active.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkUAQX4zeCp7ImA9Wx5SEEw.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-8625512476221150780</id><published>2010-08-05T15:30:00.005+02:00</published><updated>2010-08-05T16:24:00.080+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-05T16:24:00.080+02:00</app:edited><title>Identity Management: medewerker gaat uit dienst</title><content type="html">Bij Identity Management spreken we vaak over 3 scenario's: instroom, doorstroom en uitstroom. De prioriteit en nadruk komt vrijwel altijd te liggen bij het instroom scenario, omdat daar het belang zit om een nieuwe medewerker snel productief te laten zijn. Doorstroom krijgt vaak een lagere prioriteit en hangt af van de volwassenheid van de organisatie op het gebied van security en rollen. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Uitstroom is echter ook zeer belangrijk, met name als het gaat om security, licentiekosten en vervuiling van de IT omgevingen. De noodzaak om accounts dicht te zetten en rechten te ontnemen kan hoog zijn wanneer medewerkers op minder plezierige manier afscheid hebben moeten nemen. We zien echter wel een verschil in prioriteit tussen het meteen dichtzetten van accounts en het uiteindelijk opruimen van de resources.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Een belangrijk punt om in het achterhoofd te houden is het moment waarop iemand uit dienst gaat. Dit staat vrijwel altijd opgeslagen in een HRM systeem of salarisverwerkingspakket, aangezien de organisatie het salaris niet zal laten doorlopen. Deze gegevens vinden echter maar zelden hun weg naar de IT en komt het veel voor dat de IT afdeling op eigen initiatief opschoningsacties op touw zet op basis van eigen onderzoek (laatste login op het netwerk).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Een aantal voorbeelden van scenario's die ik voor klanten heb ontwikkeld zijn:&lt;/div&gt;&lt;div&gt;&lt;b&gt;Voordat iemand uit dienst gaat:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Waarschuwing 2 weken vantevoren naar de medewerker en de leidinggevende per e-mail, waarin wordt aangegeven wat de actie is en per wanneer de accounts en rechten worden geblokkeerd.&lt;/li&gt;&lt;li&gt;Extra waarschuwing de laatste 2 dagen.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;b&gt;De dag dat iemand uit dienst gaat:&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Blokkade inlog in Active Directory (disable). Het is ook mogelijk om het account actief te laten maar bijvoorbeeld alleen inloggen op een niet bestaand werkstation mogelijk te maken. Hiermee blijft bijvoorbeeld de Exchange mailbox nog benaderbaar.&lt;/li&gt;&lt;li&gt;Verplaatsen account naar speciale OU.&lt;/li&gt;&lt;li&gt;Ontnemen groepen behalve distributiegroepen (ter voorkomen van NDR's naar distributiegroepen).&lt;/li&gt;&lt;li&gt;Optioneel een x aantal dagen wachten voor de blokkade indien medewerkers nog extra tijd krijgen.&lt;/li&gt;&lt;li&gt;Overdracht van rechten op mail en data naar bijvoorbeeld een leidinggevende. Dit kan via het uitdelen/overschrijven van rechten of het volledig kopieren van deze resources naar de omgeving van de leindinggevende.&lt;/li&gt;&lt;li&gt;Aanmaken closed call in TOPdesk met omschrijving van de blokkade.&lt;/li&gt;&lt;li&gt;Downstream provisioning: blokkade van de gebruiker in applicatie X.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;b&gt;Na een bepaalde blokkade-periode:&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Verwijderen van het account.&lt;/li&gt;&lt;li&gt;Verplaatsen van data (home-directory, profiel, terminal server home-directory en/of profielen) naar een archiefmap.&lt;/li&gt;&lt;li&gt;Extractie van de Exchange mailbox naar PST en opslaan op een archief server.&lt;/li&gt;&lt;li&gt;Optioneel volledig verwijderen van alle mail en data.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Bovenstaande scenario's zijn geautomatiseerd en gefaseerd uit te voeren, delen van het scenario kunnen echter ook via een electronisch formulier worden gestart. Het is bijvoorbeeld gebruikelijk om de waarschuwing en blokkade automatisch te laten doen, maar het definitief verwijderen "achter een knop" te plaatsen.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Meer weten?&lt;/div&gt;&lt;div&gt;www.tools4ever.com&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-8625512476221150780?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/nl/products/user-management-resource-administrator/" title="Identity Management: medewerker gaat uit dienst" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/8625512476221150780/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=8625512476221150780" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8625512476221150780?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8625512476221150780?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/np9kSH_SJ1M/identity-management-medewerker-gaat-uit.html" title="Identity Management: medewerker gaat uit dienst" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/08/identity-management-medewerker-gaat-uit.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cNRn4zfyp7ImA9WxFaFUk.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-538287752293132254</id><published>2010-07-19T13:34:00.006+02:00</published><updated>2010-07-19T15:11:37.087+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-19T15:11:37.087+02:00</app:edited><title>Self Service IT: Functionele mailbox beheren</title><content type="html">Naast het beheer van user accounts en distributielijsten hebben we ook te maken met functionele postbussen, ook wel resource mailbox genoemd. Deze postbussen zijn meestal niet direct gerelateerd aan een persoon, maar meer aan een bepaald doel, zoals een vergaderzaal, project of verzamelbak. Op zich is klinkt een dergelijke postbus als redelijk simpele functionaliteit maar in de praktijk blijkt het beheer toch redelijk complex.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In Exchange is een postbus altijd aan een Active Directory account gekoppeld. Aangezien een functionele post niet direct persoonsgebonden is levert dit een vreemde situatie op, je gaat namelijk een account maken voor iets wat niet per definitie persoonsgebonden is. Dit levert in de Active Directory accounts op met namen als "VergaderzaalKamer211" en "Ideenbus", die je het liefst niet wil laten inloggen op het netwerk. Deze accounts mogen echter niet op disabled worden gezet, dan zou namelijk de postbus ook ontoegankelijk worden. Een mogelijk oplossing is om bij de Active Directory settings van dergelijke accounts een niet bestaande computer op te geven waar ze op in moeten loggen. Dit zorgt ervoor dat het een "normaal" en actief user account blijft, echter zal er geen enkele mogelijkheid zijn om op een werkstation of server in te loggen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Naast het beheren van het user account wat nodig is voor een functionele postbus blijft natuurlijk het beheer van wie er bij de postbus mag en wat de persoon precies mag doen. Dit is geen eenvoudige beheerstaak, er moeten namelijk security instellingen op het Active Directory account van de postbus worden beheerd om personen toegang te geven. Een bekende instelling is bijvoorbeeld het "verzenden als", ook wel "send-as" genoemd. Je kunt een persoon de rechten geven om namens de postbus mail te versturen. Voor een IT beheerder is dit echter niet een hele simpele wijziging, je zult in de security settings van het account moeten graven en hier het send-as vinkje toewijzen aan een ander persoon. Bij meer dan 10 personen op 1 functionele mailbox wordt deze lijst ook vrij lang en werkt dit in de praktijk niet erg handig.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Met UMRA bieden we de mogelijkheid om het beheer van functionele postbussen in de organisatie te leggen. Je kunt bijvoorbeeld een aantal mensen aanwijzen die de mogelijkheid hebben om functionele postbussen aan te maken en om rechten te beheren. Deze personen krijgen dan een electronische formulieren interface aangeboden waarbij ze alleen maar een naam voor de postbus kunnen opgeven bij het aanmaken. De UMRA engine zal zelf controleren of de naam vrij is en zal deze formatteren om er een correcte postbus van te maken inclusief alle Active Directory settings. Vervolgens kun je via dezelfde interface een overzicht krijgen van alle bestaande functionele postbussen en de rechten beheren. Het is prima mogelijk om per functionele postbus personen toe te voegen of te verwijderen en om individueel instellingen zoals "send-as" toe te wijzen. Deze beheerstaken worden direct op de Active Directory uitgevoerd zonder tussenkomst van een IT beheerder. De persoon die de taken uitvoert heeft echter niet rechtstreeks rechten op de Active Directory, hij/zij heeft enkel de rechten op die specifieke taak uit te voeren. De daadwerkelijke operatie wordt door UMRA uitgevoerd via een beschermde delegatie laag.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Meer weten?&lt;/div&gt;&lt;div&gt;www.tools4ever.com/nl&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-538287752293132254?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/538287752293132254/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=538287752293132254" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/538287752293132254?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/538287752293132254?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/V-LXaNbgG88/self-service-it-functionele-mailbox.html" title="Self Service IT: Functionele mailbox beheren" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/07/self-service-it-functionele-mailbox.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEMQ3Y_fCp7ImA9WxFaEE0.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-5556414919123526965</id><published>2010-07-13T08:37:00.006+02:00</published><updated>2010-07-13T09:04:42.844+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-13T09:04:42.844+02:00</app:edited><title>Expired accounts van externe medewerkers: help ik kan niet meer inloggen, wat nu?</title><content type="html">Het probleem is voor veel systeembeheerders en helpdeskmedewerkers wel bekend: tijdelijke of externe medewerkers krijgen een account met een verloopdatum, ondertussen wordt hun contract verlengd zonder dit aan ICT door te geven en staan ze 's ochtends aan je bureau te klagen dat ze niet kunnen werken.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Oplossing 1: koppeling met HRM&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Een structurele oplossing is om je Active Directory te koppelen met het HRM systeem, bijvoorbeeld AFAS Profit, RAET Beaufort, PIMS@All van Centric of SAP HCM. Met een koppeling wordt automatisch herkend of een contract verloopt en kan exact worden bepaald wanneer een account moet worden geblokkeerd. Een mutatie bij HRM betekent dat dit via de koppeling ook automatisch wordt doorgevoerd in Active Directory en dat een medewerker weer gewoon kan werken. Een dergelijke koppeling kan ook gefaseerd werken, zodat je bijvoorbeeld een overloop kunt aanbrengen waardoor iemand na de einde contractdatum nog 2 dagen kan inloggen, vervolgens 90 dagen in quarantaine wordt geplaatst en daarna volledig wordt opgeruimd inclusief de data en de mailbox.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Oplossing 2: self-service via e-forms&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Als tijdelijke krachten of externe medewerkers niet in het HRM systeem staan kan dit worden ondervangen door leidinggevenden zelf via een webshop met e-forms dit type medewerkers te beheren. Ze kunnen dan zelf accounts voor deze medewerkers aanvragen waarbij de aanvraag direct kan worden uitgevoerd of eerst via ICT moet worden goedgekeurd. Via de webshop kan de leidinggevende zelf beheertaken uitvoeren op de accounts die hij/zij heeft aangevraagd, bijvoorbeeld reset wachtwoord, unlock account, blokkeren, vrijgeven en verlengen. De tijdelijke medewerker hoeft voor het verlengen van de contractperiode nu niet meer naar ICT maar kan dit direct met de leidinggevende afhandelen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Oplossing 3: automatische rapportage en signaleringen&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Deze oplossing is ook mogelijk in combinatie met de eerder genoemde oplossingen. De verloopdatum in Active Directory (expiration date) is met UMRA makkelijk uit te lezen naar een leesbare datum. Om te voorkomen dat via oplossing 2 de leidinggevende alsnog vergeet om de contractperiode te verlengen is het mogelijk om elke dag te kijken naar de accounts die bijvoorbeeld over 2 weken gaan verlopen. Op basis van deze lijst kunnen signaleringen worden uitgezet naar het account zelf en naar de persoon die het account heeft aangevraagd. Zo ben je in ieder geval altijd op de hoogte van de accounts die dreigen te gaan verlopen en kun je een hoop frustratie besparen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Meer weten?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;www.tools4ever.com&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-5556414919123526965?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="Expired accounts van externe medewerkers: help ik kan niet meer inloggen, wat nu?" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/5556414919123526965/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=5556414919123526965" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/5556414919123526965?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/5556414919123526965?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/bew6pbZRNb0/expired-accounts-van-externe.html" title="Expired accounts van externe medewerkers: help ik kan niet meer inloggen, wat nu?" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/07/expired-accounts-van-externe.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkAASXsycCp7ImA9WxFbFEw.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-1757061423284847174</id><published>2010-07-05T15:14:00.005+02:00</published><updated>2010-07-06T12:05:48.598+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-06T12:05:48.598+02:00</app:edited><title>Delegatie naar Projectmanagers: self-service beheer van een projectmap</title><content type="html">&lt;div&gt;&lt;b&gt;Uitdaging:&lt;/b&gt;&lt;/div&gt;Bij de wat grotere organisaties zie ik vaak de behoefte om voor een project een eigen map te hebben die een projectmanager zelf kan beheren. Zo wil een projectmanager zelf leden kunnen toevoegen of verwijderen en bepalen wie mag lezen of schrijven. De procedure is meestal dat een projectmanager naar ICT moet om een map aan te laten maken en elke wijziging van autorisaties of permissies door moet geven aan ICT. Binnen ICT resulteert dit in een call of ticket waarbij er een persoon toegewezen moet worden om de taak uit te voeren en de projectmanager op de hoogte te stellen.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Het kan anders:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Middels self-service kun je een projectmanager prima zelf een project laten registreren en als ICT beheer bepalen wat er dan precies technisch gebeurt op NTFS niveau en in de Active Directory middels templates. Het is bijvoorbeeld mogelijk om via een koppeling met het HR systeem te herkennen wie in Active Directory daadwerkelijk de projectmanagers zijn, vervolgens kunnen deze accounts via een beveiligde electronische formulieren (e-forms) oplossing zelf een project aanmelden. Dit project wordt dan gecontroleerd op naamgeving en duplicaten, vervolgens kan via een intelligent mechanisme ergens op een fileserver een map worden aangemaakt. Dit mechanisme laat bijvoorbeeld toe om een groep fileservers op te geven en dat de server met de meeste vrije ruimte wordt gehanteerd, of dat er een willekeurige server wordt gekozen uit een groep. Met DFS zou dit nog makkelijker zijn en heb je in de regel minder intelligentie nodig bij het uitzoeken van een NTFS locatie, dat regelt DFS immers grotendeels. Nadat de map is aangemaakt kunnen automatisch in de Active Directory locale en globale groepen worden aangemaakt met een zelf gekozen naamgevingsconventie, bijvoorbeeld G-LG-NTFS-"project"-R en G-LG-NTFS-"project"-C. De lokale groepen worden dan met de globale groepen verbonden en krijgen read en change rechten op de map. De projectmanager krijgt na afloop van het electronische formulier waarin de acties meteen worden uitgevoerd de melding dat de map is aangemaakt en kan meteen door naar het volgende formulier om leden aan de map toe te voegen met lees of schrijfrechten. Feitelijk wordt dan op de achtergrond een mutatie uitgevoerd op de eerder aangemaakte Active Directory groepen, echter is dat voor de projectmanager niet meer relevant.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Meer weten?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tools4ever.com/nl/products/user-management-resource-administrator/features/phasetwo/"&gt;Organisatie delegatie en Self Service&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-1757061423284847174?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="Delegatie naar Projectmanagers: self-service beheer van een projectmap" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/1757061423284847174/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=1757061423284847174" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/1757061423284847174?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/1757061423284847174?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/9mXMdkqtozo/delegatie-naar-projectmanagers-self.html" title="Delegatie naar Projectmanagers: self-service beheer van een projectmap" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/07/delegatie-naar-projectmanagers-self.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkECQnk9fyp7ImA9WxFbEUk.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-2003783074905966266</id><published>2010-07-01T10:08:00.006+02:00</published><updated>2010-07-03T10:11:03.767+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-03T10:11:03.767+02:00</app:edited><title>Self Service ICT Webshop voor de organisatie</title><content type="html">&lt;b&gt;De vraagstelling en uitdaging is simpel:&lt;/b&gt;&lt;div&gt;&lt;b&gt;&lt;/b&gt;De organisatie wil makkelijk en direct toegang tot ICT diensten en ICT beheer heeft de verantwoordelijkheid om de veiligheid en stabiliteit te waarborgen. In de praktijk blijken dit vaak tegengestelde belangen, er zijn echter wel genoeg mogelijkheden om toch de organisatie meer zelf te laten doen zonder dat dit hoofdpijn voor ICT oplevert. Sterker nog, we kunnen ook de ICT met dezelfde oplossing gelukkiger maken.&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Het scenario: &lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;De organisatie wil graag zelf user accounts voor externe medewerkers kunnen aanvragen en dat deze dan ook direct actief zijn. Verder willen medewerkers sneller toegang tot applicaties en levert dit nu teveel heen-en-weer communicatie tussen medewerkers, leidinggevenden en ICT op.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Hoe gaat dit nu?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Voor tijdelijke medewerkers bestaat er meestal een procedure waarbij een papieren formulier moet worden ingevuld, wat via P&amp;amp;O uiteindelijk bij ICT terecht komt. Bij ICT constateert men vaak dat er nog wat informatie ontbreekt zodat er gebeld moet worden welke rechten de nieuwe medewerker precies nodig heeft. Vervolgens blijft de aanvraag liggen omdat een applicatiebeheerder nog toegang moet geven op een financieel pakket wat weer goedkeuring van een andere afdeling vereist. Dit is maar een voorbeeld, echter zul je snel merken dat de aanvragen uit de organisatie nagenoeg altijd over meerdere schijven lopen, met elk een goedkeuringsslag en door ICT uitgevoerd dienen te worden. Omdat dit echter een handmatige procedure is wordt ICT geacht als procesmanager op te treden, de voortgang en kwaliteit te bewaken, en ook om de communicatie te verzorgen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Hoe kan dit beter?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;We kunnen een veilige en gepersonaliseerde "webshop" inrichten waar de organisatie zelf aanvragen via elektronische formulieren (e-forms) kunnen indienen. Een aanvraag kan dan vervolgens over 1 of meer goedkeuringsslagen lopen en uiteindelijk bij ICT terecht komen. Op zich logisch en je vertaalt hiermee bijna 1:1 het bovenstaande scenario. Het gaat echter een stuk verder, iedereen met toegang tot de "webshop" kan namelijk ten alle tijde volgen wat er met de aanvraag gebeurt, wie de volgende stap zou moeten nemen en ook achteraf wanneer een bepaalde goedkeuring of afwijzing heeft plaatsgevonden. Ook zal de webshop zich vormen naar de organisatiestructuur wanneer deze gekoppeld is aan het HRM systeem. De webshop kan bijvoorbeeld dynamisch de relatie tussen medewerker en manager uit HRM halen. Ook kun je stamgegevens als afdelingen, functies en kostenplaatsen direct uit HRM halen en als keuze op e-formulieren tonen. Je houdt dus eigenlijk de hierarchie van de organisatie aan, en tegelijkertijd kunnen de formulieren zo gestroomlijnd worden dat precies de juiste informatie uiteindelijk bij ICT terecht komt. Als ICT dan de "werkorder" binnenkrijgt weten ze dat de informatie correct is, dat de aanvraag goedgekeurd is door een bevoegd leidinggevende, en dat de informatie ook tijdig is aangezien de aanvragen direct worden doorgezet. Het is dan voor ICT ook veel makkelijker om de werkorders uit te voeren, de communicatie en terugkoppeling wordt immers door de webshop geregeld.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Meer weten of eens een demo van de webshop zien?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tools4ever.com/nl/products/user-management-resource-administrator/features/phasefour/"&gt;Workflow Management &amp;amp; Self Service&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-2003783074905966266?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="Self Service ICT Webshop voor de organisatie" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/2003783074905966266/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=2003783074905966266" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/2003783074905966266?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/2003783074905966266?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/gHX8c8A3uZQ/self-service-it-webshop-voor-de.html" title="Self Service ICT Webshop voor de organisatie" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/07/self-service-it-webshop-voor-de.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEESH49eSp7ImA9WxFbEUk.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-7217883155230069124</id><published>2010-06-25T10:09:00.003+02:00</published><updated>2010-07-03T10:10:09.061+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-03T10:10:09.061+02:00</app:edited><title>Personeelsnummer of BSN in Active Directory, hoe?</title><content type="html">Organisaties die bezig zijn met het opschonen van hun Active Directory of het koppelen van andere systemen zoals smoelenboeken, printpassen, etc lopen vaak tegen het probleem aan dat ze het personeelsnummer of BSN niet in de Active Directory hebben staan. Dit is vaak de showstopper om Active Directory als leidende account database te gaan beschouwen, en zorgt voor problemen bij het koppelen van alle identiteiten binnen de organisatie.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Scenario: je hebt een HRM systeem met 1000 medewerkers met hun naamgeving, al dan niet dubbele dienstverbanden, functies, afdelingen en leidinggevenden. Aan de andere kant heb je een Active Directory met 2300 accounts waar in de loop der jaren verschillende ICT medewerkers met de hand hun eigen interpretatie van de naamgevingsstandaarden hebben gebruikt om accounts aan te maken. De wens bestaat om Active Directory op te schonen of om de Active Directory als centrale account database te gaan positioneren. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Uitdaging: de eerste stap zou dan kunnen zijn om te gaan bepalen welke van de 2300 accounts toegewezen is aan medewerkers die uit dienst zijn. Dit betekent dat je medewerkers uit HRM moet gaan koppelen aan accounts in de AD. Als het personeelsnummer of BSN niet in de AD staat heb je geen unieke sleutel om deze koppeling tot stand te brengen. Het handmatig invullen van personeelsnummers of de BSN op alle AD accounts is een tijdrovende klus.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Oplossing: met UMRA en de consultancy services van Tools4ever kun je binnen 1 dag een match realiseren tussen HRM en AD, waarbij personeelsnummer en/of BSN aan de Active Directory worden toegevoegd in voor eindgebruikers onzichtbare attributen. We zijn in staat om alle mogelijke combinaties van naamgevingsconventies (100+) die ooit gebruikt zijn om accounts aan te maken, inclusief alle mogelijke volgorders van partnernamen en schrijfwijzes, te matchen aan het HRM systeem. De ervaring leert dat we hiermee altijd rond de 85-90% matchingsgraad weten te halen waarbij er nog een kleine lijst overblijft die handmatig behandeld moet worden.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Meer weten? Neem gerust contact met ons op:&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tools4ever.com/nl/products/user-management-resource-administrator/features/phasethree/"&gt;User Provisioning vanuit HR-systeem&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-7217883155230069124?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="Personeelsnummer of BSN in Active Directory, hoe?" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/7217883155230069124/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=7217883155230069124" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/7217883155230069124?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/7217883155230069124?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/G8mTKGHCT9E/personeelsnummer-of-bsn-in-active.html" title="Personeelsnummer of BSN in Active Directory, hoe?" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/06/personeelsnummer-of-bsn-in-active.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkIAQ3k8fSp7ImA9WxFbEUk.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-2050745349509556924</id><published>2010-06-22T16:42:00.003+02:00</published><updated>2010-07-03T10:09:02.775+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-03T10:09:02.775+02:00</app:edited><title>RBAC: Role Based Access Control: wat moeten we er mee?</title><content type="html">In de wereld van IDM en IAM (Identity &amp;amp; Access Management) zien we steeds meer de term RBAC naar voren komen en de wens van klanten om alle autorisaties in het netwerk op een gestructureerde manier te beheren en uit te delen. Wat je vaak tegenkomt bij het toekennen van autorisaties is een kopieslag van een collega, ook wel "voorbeeldgebruiker" genoemd. Meestal zie je dan ook dat er niet veel aandacht wordt besteed aan het ontnemen van autorisaties, het is immers van groter belang dat de medewerker zijn/haar werk kan doen en in eerste instantie niet wat er mogelijk teveel gedaan kan worden.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We zien echter in deze mentaliteit wel een verandering, deels ingegeven door normeringen (NEN 7510 en NEN 7511) en IT auditors, maar ook door de volwassenheid van de organisatie zelf die bijvoorbeeld inzichtelijk willen hebben waar de licentiekosten voor Microsoft Visio en Project nu vandaan komen en of mogelijk externen hier zwaar op drukken.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Dus: hoe gaan we op een verantwoorde manier om met autorisaties? De eerste stap is om naar de organisatie zelf te kijken en te proberen om een rolmodel van bijvoorbeeld de combinatie van afdeling + functie te maken. Als je naar het HRM systeem kijkt is hier prima uit te halen welke top 50 combinaties van afdeling + functie aan actieve dienstverbanden gekoppeld is. Dit is dan meteen de eerste aanzet tot een organisatie rol-model. Deze rollen kunnen vervolgens vertaald worden op applicatierollen of systeemrollen, welke op hun beurt weer detailautorisaties bevatten. Op zich is een dergelijk schema niet al te ingewikkeld voor te stellen, echter merk je al snel dat het om veel rollen gaat met een zeer grote waaier naar de autorisaties. De echte complexiteit zit hem dan in het beheer van de vertaling van organisatierol naar applicatie/systeemrol, en verder naar autorisatie. Hoe maak je deze vertalingen inzichtelijk, hoe sla je ze op, wie mag deze beheren en wie mag ze eventueel namens wie beheren.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Een voorbeeld:&lt;/div&gt;&lt;div&gt;Stel we nemen een ziekenhuis met een afdeling Chirurgie waarin de functie Verpleger voorkomt. De functie Verpleger is niet uniek en komt ook binnen andere afdelingen voor, dus alleen de functie als rol is niet voldoende. De organisatierol voor een dergelijke medewerker wordt dan:&lt;/div&gt;&lt;div&gt;"Chirurgie-Verpleger"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Stel dat deze rol toegang moet hebben tot de applicaties EZIS, Mirador, UltraGenda, Zamicom, Word, Excel en PowerPoint, dan krijg je dus een vertaling van "Chirurgie-Verpleger" naar applicatierollen voor elke applicatie, bijvoorbeeld:&lt;/div&gt;&lt;div&gt;"Chirurgie-Verpleger" - "EZIS-DossiersRaadplegen"&lt;/div&gt;&lt;div&gt;"Chirurgie-Verpleger" - "EZIS-DossiersWijzigen"&lt;/div&gt;&lt;div&gt;"Chirurgie-Verpleger" - "UltraGenda-AfspraakInboeken"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De applicatierollen bevatten vervolgens weer de detailautorisaties binnen bijvoorbeeld EZIS en UltraGenda zodat de rol uitgevoerd kan worden. Als alle rollen en autorisaties uitgewerkt worden krijg je snel te maken met zeer veel data, en hoe ga je dit netjes beheren?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Mijn mening is dat je moet streven naar zoveel mogelijk gebruik maken van bestaande systemen en bronnen, bijvoorbeeld een HRM systeem. Je kunt uit een dergelijk systeem prima de relatie tussen leidinggevenden, afdelingen en medewerkers halen. Dit is een goed uitgangspunt om het beheer van de vertalingen tussen rollen te beleggen, je kunt dan namelijk een leidinggevende alle vertalingen van rollen binnen zijn/haar afdeling laten beheren met de mogelijkheid tot delegatie naar iemand anders. Op deze manier kan een leidinggevende exact bepalen en beheren wat er binnen zijn/haar afdeling of kostenplaats gebeurt.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Meer weten over de visie van Tools4ever op RBAC en over de oplossingen die we bieden? Neem dan vrijblijvend contact met ons op.&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tools4ever.com/nl/products/user-management-resource-administrator/features/phasefive/"&gt;Role Based Access Control - RBAC&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-2050745349509556924?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/solutions/RBAC/" title="RBAC: Role Based Access Control: wat moeten we er mee?" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/2050745349509556924/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=2050745349509556924" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/2050745349509556924?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/2050745349509556924?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/KsqXRKD55KQ/rbac-role-based-access-control-wat.html" title="RBAC: Role Based Access Control: wat moeten we er mee?" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/06/rbac-role-based-access-control-wat.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUAGRng9cCp7ImA9WxFUEkw.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-6864911216982723907</id><published>2010-06-22T16:36:00.002+02:00</published><updated>2010-06-22T16:42:07.668+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-22T16:42:07.668+02:00</app:edited><title>Nieuw schooljaar komt er aan: zorg dat de UMRA koppeling in topconditie is!</title><content type="html">&lt;p class="MsoNormal"&gt;&lt;span lang="NL" style="mso-ansi-language:NL"&gt;Tools4ever heeft een groot aandeel in de educatieve markt als het gaat om (vol)automatische koppelingen tussen leerlingvolgsystemen en het netwerk. Deze koppelingen zijn een belangrijke factor in de dagelijkse operatie van een school, aangezien leerlingen en personeel niet meer kunnen werken zonder gebruik te maken van de IT infrastructuur. De zomerperiode is voor zowel het leerlingvolgsysteem als voor de IT infrastructuur een periode waarin veel veranderingen kunnen plaatsvinden die zijn weerslag hebben op de koppelingen tussen deze systemen.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;De start van het nieuwe schooljaar zorgt voor veel mutaties in de IT-infrastructuur, gestuurd door de vele wijzigingen mbt leerlingen en personeel in het leerlingvolgsysteem en eventuele andere HRM applicaties. Het is van groot belang dat leerlingen en personeel direct bij aanvang van de eerste dag van het nieuwe schooljaar gebruik kunnen maken van de volledige IT dienstverlening. Tools4ever heeft een checklist ontwikkeld waarmee we een beoordeling kunnen maken van de omstandigheden waarin een koppeling uitgevoerd wordt. Een kleine verandering in de IT infrastructuur kan gevolgen hebben voor het correct functioneren van een koppeling en dient daarom preventief te worden vastgesteld voordat het nieuwe schooljaar begint.&lt;/p&gt;&lt;p class="MsoNormal"&gt;Zorg dat de UMRA koppelingen in topconditie zijn voor het nieuwe schooljaar, neem contact op met Tools4ever als je meer wilt weten over de &lt;b&gt;preventieve checkup&lt;/b&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-6864911216982723907?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/connectors/" title="Nieuw schooljaar komt er aan: zorg dat de UMRA koppeling in topconditie is!" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/6864911216982723907/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=6864911216982723907" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/6864911216982723907?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/6864911216982723907?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/UbwUsOPH-vc/nieuw-schooljaar-komt-er-aan-zorg-dat.html" title="Nieuw schooljaar komt er aan: zorg dat de UMRA koppeling in topconditie is!" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/06/nieuw-schooljaar-komt-er-aan-zorg-dat.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMCRngzeCp7ImA9WxBbFE0.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-1960328904556769162</id><published>2010-03-12T15:12:00.002+01:00</published><updated>2010-03-12T15:17:47.680+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-12T15:17:47.680+01:00</app:edited><title>UMRA: Exchange rapportage over quota size en store defaults</title><content type="html">&lt;span&gt;&lt;span&gt;Het komt wel eens voor dat je voor alle gebruikers uit AD rapportage wil draaien wie bijvoorbeeld de mail store defaults heeft staan op zijn/haar mailbox, en wie van de defaults afwijkt. Je wilt dan ook weten wat de quota sizes zijn voor warning (MDBStorageQuota), prohibit (MDBOverQuotaLimit) en de prohibit send and receive (MDBOverHardQuotaLimit). Met UMRA kan dit eenvoudig worden opgelost op de volgende manier:&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Definieer een functie met daarin een Generate generic table, welke connectie maakt met LDAP://domaincontroller.domain.local&lt;/li&gt;&lt;li&gt;Configureer het LDAP search filter op (&amp;amp;(objectCategory=person)(cn=*))&lt;/li&gt;&lt;li&gt;Bij attributen, gebruik bijvoorbeeld distinguishedName, sAMAccountName en dan MDBStorageQuota, MDBOverQuotaLimit en MDBOverHardQuotaLimit&lt;/li&gt;&lt;li&gt;Gebruik vervolgens de actie Manage table en kies daarin voor Export to CSV. Vul een export file locatie in en kies bij de delimiter voor ; en bij de formatting voor QUOTEALWAYS, daarmee zorg je dat elk veld met "" wordt omsloten, wat een import in Excel weer makkelijker maakt.&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-1960328904556769162?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="UMRA: Exchange rapportage over quota size en store defaults" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/1960328904556769162/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=1960328904556769162" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/1960328904556769162?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/1960328904556769162?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/06Qe0hkSvWM/umra-exchange-rapportage-over-quota.html" title="UMRA: Exchange rapportage over quota size en store defaults" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/03/umra-exchange-rapportage-over-quota.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk8GSH44cCp7ImA9WxBWFEk.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-5091796632103729422</id><published>2010-02-05T14:20:00.003+01:00</published><updated>2010-02-06T09:27:09.038+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-06T09:27:09.038+01:00</app:edited><title>Microsoft .NET Web Developer/Architect gezocht!</title><content type="html">Bij Tools4ever zijn we hard bezig met het ontwikkelen van nieuwe technieken voor Identity &amp;amp; Access Management. Op dit moment zoek ik versterking in de vorm van een Microsoft .NET Developer / Architect die zelfstandig in staat is om een Web 2.0 applicatie te ontwikkelen en te onderhouden. Heb je affiniteit met Microsoft netwerken, Active Directory, Identity &amp;amp; Access Management en beschik je over goede communicatieve vaardigheden, neem dan contact op via &lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px; border-collapse: collapse; "&gt;&lt;a href="http://www.tools4ever.com/careers/.NET_Developer-nl"&gt;http://www.tools4ever.com/&lt;wbr&gt;careers/.NET_Developer-nl&lt;/a&gt;&lt;/span&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ervaring:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Aantal jaren ervaring met ASP.NET&lt;/li&gt;&lt;li&gt;Veel ervaring in .NET framework 1.1 t/m 3.5&lt;/li&gt;&lt;li&gt;Goede kennis van AJAX technieken voor Web 2.0 applicaties&lt;/li&gt;&lt;li&gt;Goede kennis van SQL Server en het schrijven van queries&lt;/li&gt;&lt;li&gt;Goede kennis van JavaScript&lt;/li&gt;&lt;li&gt;Microsoft gecertificeerd (MCTS/MCITP)&lt;/li&gt;&lt;li&gt;Kennis van COM, COM+ en ActiveX zijn een pre&lt;/li&gt;&lt;li&gt;Kennis van de extJS library is een pre&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Tools4ever biedt:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Uitstekende arbeidsvoorwaarden&lt;/li&gt;&lt;li&gt;Veel zelfstandigheid en vrijheid in het ontwikkelen&lt;/li&gt;&lt;li&gt;Volop mogelijkheden om je creatief te ontwikkelen&lt;/li&gt;&lt;li&gt;Werken bij de marktleider op het gebied van Active Directory beheer en provisioning&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-5091796632103729422?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/5091796632103729422/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=5091796632103729422" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/5091796632103729422?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/5091796632103729422?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/Em88tVL_Gr8/microsoft-net-web-developerarchitect.html" title="Microsoft .NET Web Developer/Architect gezocht!" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2010/02/microsoft-net-web-developerarchitect.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEEHQ384eip7ImA9WxBTEUo.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-4019466917794662901</id><published>2009-12-07T08:51:00.003+01:00</published><updated>2009-12-07T08:57:12.132+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-07T08:57:12.132+01:00</app:edited><title>Waar ben ik mee bezig?</title><content type="html">Ja de laatste update is alweer een tijd geleden. De afgelopen maanden ben ik veel operationeel in het veld bezig geweest en natuurlijk weer een hoop ervaringen opgedaan, daarover later meer. Op dit moment ben ik bezig met de ontwikkeling van nieuwe oplossingen gebaseerd op UMRA, ik verwacht begin 2010 hierover meer te kunnen vertellen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-4019466917794662901?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/4019466917794662901/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=4019466917794662901" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/4019466917794662901?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/4019466917794662901?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/qPLhZ9B5VsI/waar-ben-ik-mee-bezig.html" title="Waar ben ik mee bezig?" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/12/waar-ben-ik-mee-bezig.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEAHQnc9eyp7ImA9WxNSEU0.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-928487509622906291</id><published>2009-08-24T10:21:00.003+02:00</published><updated>2009-08-24T10:32:13.963+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-24T10:32:13.963+02:00</app:edited><title>Performance tuning bij koppelingen</title><content type="html">Bij veel klanten leveren we actieve koppelingen tussen HR-bron systemen en bijvoorbeeld een Active Directory. Een dergelijke koppeling bevat in de praktijk altijd een drietal scenario's:&lt;div&gt;&lt;ul&gt;&lt;li&gt;Medewerker nieuw in dienst: aanmaken&lt;/li&gt;&lt;li&gt;Medewerker verandert van functie/afdeling: update met mogelijke wijzigingen in groepen&lt;/li&gt;&lt;li&gt;Medewerker gaat uit dienst: inactief maken, mogelijk na een aantal dagen/maanden definitief verwijderen&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Bij een aantal van de bovenstaande scenario's is het denkbaar dat extra informatie nodig is uit het HR-systeem, en dat deze informatie meervoudig per werknemer is. Denk bijvoorbeeld aan lokaties, afdelingen, functies en kostenplaatsen. Een medewerker kan best aan meerdere van deze elementen gekoppeld zijn. De basisopzet van een koppeling is echter om met genormaliseerde gegevens te werken, dus 1 record met 1 waarde per werknemer.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Zodra in een koppeling gebruik wordt gemaakt van een groepsynchronisatie op basis van meedere elementen per werknemer zie je vaak dat het HR-systeem nogmaals wordt geraadpleegd, wat resulteert in een extra query voor elke werknemer. Deze extra queries zorgen niet alleen voor vertraging van de koppeling, maar ook voor extra netwerkbelasting en belasting van het HR-systeem.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;De oplossing: werken met sessie variabelen.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;In UMRA is er sinds versie 10 de mogelijkheid om variabelen in een sessie op te slaan. Een groot voordeel hiervan is dat je eenvoudig aan het begin van een koppeling een grote repository kunt opbouwen van alle gegevens die nodig zijn, en deze later kunt raadplegen uit memory in plaats van een extra query nodig te hebben.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Voorbeeld:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Stel je werkt met een HR-systeem met 5500 medewerkers. Elke medewerker heeft 1 of meer functies bij 1 of meer afdelingen. De koppeling loopt over een bron met 5500 records met genormaliseerde gegevens, dus 1 functie en 1 afdeling. Voordat de iteratie over de 5500 recors begint, wordt er eerst een grote gegevensset uit het HR systeem geladen met alle personeelsnummers, functies en afdelingen. Deze gegevensset wordt in de sessie opgeslagen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Per iteratie voor de 5500 records kun je nu de gegevensset uit de sessie raadplegen, zoeken in de tabel in memory naar het personeelsnummer en zo alle functies en afdelingen ophalen per werknemer. Aangezien dit allemaal in memory plaatsvindt is de performance uitstekend en zijn subqueries naar externe systemen niet nodig.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-928487509622906291?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="Performance tuning bij koppelingen" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/928487509622906291/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=928487509622906291" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/928487509622906291?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/928487509622906291?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/beC4NQBjpRg/performance-tuning-bij-koppelingen.html" title="Performance tuning bij koppelingen" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/08/performance-tuning-bij-koppelingen.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkQHQng5eip7ImA9WxNTGEk.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-8880477383575363596</id><published>2009-08-21T10:34:00.003+02:00</published><updated>2009-08-21T10:45:33.622+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-21T10:45:33.622+02:00</app:edited><title>SmartDocuments: Batch Import new accounts</title><content type="html">SmartDocuments wordt bij een aantal klanten gebruikt als huisstijl-applicatie bovenop Microsoft Office Word. Deze applicatie draait bovenop een SQL database die eigen user accounts bijhoudt. Dat zorgt er weer voor dat je dus zelf het userbeheer van een dergelijke applicatie zou moeten bijhouden. Je kunt dit echter integreren in een UMRA omgeving en dit aan bijvoorbeeld je helpdesk delegeren via e-formulieren.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De SQL database van SmartDocuments heeft een tabel genaamd SDUsers, hierin wordt de status van de user accounts bijgehouden die SmartDocuments mogen gebruiken. Het probleem is echter dat een property van deze database gevuld moet worden via een zogenoemde XML PropertyBag, waarin de werkelijke properties van de user zijn opgenomen. Dit dient vooraf correct geformatteerd te worden voordat het in de database verwerkt kan worden. Met UMRA kun je gelukkig eenvoudig XML formatteren en deze PropertyBag voorbereiden voor een database insert.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De code om een nieuwe entry in de SDUsers tabel aan te maken via een SQL insert werkt als volgt:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;INSERT INTO SDUsers&lt;/div&gt;&lt;div&gt;(ID,&lt;/div&gt;&lt;div&gt;IsAdmin,&lt;/div&gt;&lt;div&gt;Login,&lt;/div&gt;&lt;div&gt;Password,&lt;/div&gt;&lt;div&gt;ItemData)&lt;/div&gt;&lt;div&gt;VALUES&lt;/div&gt;&lt;div&gt;(replace(convert(varchar(255), newid()), '-', ''),&lt;/div&gt;&lt;div&gt;0,&lt;/div&gt;&lt;div&gt;'%AD_username%',&lt;/div&gt;&lt;div&gt;'',&lt;/div&gt;&lt;div&gt;'%PropertyBag%')&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De %AD_username% is de sAMAccountName waarde uit Active Directory welke door UMRA wordt doorgegeven, en de %PropertyBag% is een door UMRA in XML formatteerde string.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Het opvragen van de status of iemand SmartDocuments kan gebruiken is natuurlijk simpel, via het volgende commando kun je opvragen of een username voorkomt in de SDUsers tabel:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;SELECT ID &lt;/div&gt;&lt;div&gt;FROM SDUsers&lt;/div&gt;&lt;div&gt;WHERE Login = '%AD_username%'&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Neem contact op met Tools4ever om meer te weten te komen over de integratie met SmartDocuments en hoe de XML database import specifiek voor jouw omgeving kan worden ingericht.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.tools4ever.com/products/user-management-resource-administrator"&gt;http://www.tools4ever.com/products/user-management-resource-administrator&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-8880477383575363596?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="SmartDocuments: Batch Import new accounts" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/8880477383575363596/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=8880477383575363596" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8880477383575363596?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8880477383575363596?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/uVo65HtV9mw/smartdocuments-batch-import-new.html" title="SmartDocuments: Batch Import new accounts" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/08/smartdocuments-batch-import-new.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUYHRn84eCp7ImA9WxJUF0g.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-3149560172349769090</id><published>2009-07-16T16:01:00.003+02:00</published><updated>2009-07-16T16:05:37.130+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-16T16:05:37.130+02:00</app:edited><title>VBScript to read Exchange 2003 mailbox store total size</title><content type="html">In Exchange 2007, you have PowerShell to perform powerful queries on mailbox stores, which make it easy to get the total size of a mailbox store by calculating all mailbox contents in bytes. In Exchange 2003 however, you need to do this with WMI which doesn't know about mailbox stores but only allows you to query mailboxes.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The script below does 2 loops through all mailboxes. The first one is to get a unique list of all the mailbox stores from each mailbox, and the second one is to calculate the total size of each unique mailbox store from all the mailboxes. In my tests it takes about 30 seconds for an environment of 3 mailbox stores with over 9000 mailboxes.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The script takes 2 parameters, Exchange server and output file. The output file will contain the following data:&lt;/div&gt;&lt;div&gt;mailbox store 1|5262342&lt;/div&gt;&lt;div&gt;mailbox store 2|23489&lt;/div&gt;&lt;div&gt;mailbox store 3|60930235&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;==========================================&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;dim fso, StoreArray, StoreName_cache&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;set fso = CreateObject("Scripting.FileSystemObject")&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;strComputerName = wscript.arguments(0)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;strOutput = wscript.arguments(1)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;set output = fso.CreateTextFile(strOutput, True)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;strE2K3WMIQuery = "winmgmts://" &amp;amp; strComputerName &amp;amp; "/root/MicrosoftExchangeV2"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Set mboxList = GetObject(strE2K3WMIQuery).InstancesOf("Exchange_Mailbox")&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;StoreName_cache = ""&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;For each mailbox in mboxList&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;if InStr(StoreName_cache, mailbox.StoreName) = 0 then&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;StoreName_cache = StoreName_cache &amp;amp; ";" &amp;amp; mailbox.StoreName &amp;amp; "|0"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;end if&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Next&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;StoreName_cache = Mid(StoreName_cache, 2, Len(StoreName_cache))&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;StoreArray = Split(StoreName_cache, ";")&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;For each mailbox in mboxList&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;For currentIndex = 0 to UBound(StoreArray)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;tmpArray = Split(StoreArray(currentIndex), "|")&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;if tmpArray(0) = mailbox.StoreName then &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;tmpSize = CLng(tmpArray(1)) + CLng(mailbox.Size)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;StoreArray(currentIndex) = mailbox.StoreName &amp;amp; "|" &amp;amp; tmpSize&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;end if&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Next&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Next&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;For currentIndex = 0 to UBound(StoreArray)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;output.WriteLine StoreArray(currentIndex)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Next&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-3149560172349769090?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/3149560172349769090/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=3149560172349769090" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/3149560172349769090?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/3149560172349769090?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/X0Sdudx_0BM/vbscript-to-read-exchange-2003-mailbox.html" title="VBScript to read Exchange 2003 mailbox store total size" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/07/vbscript-to-read-exchange-2003-mailbox.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMFRnY_eCp7ImA9WxJUFEQ.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-3239200983798303151</id><published>2009-07-13T15:54:00.002+02:00</published><updated>2009-07-13T15:56:57.840+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-13T15:56:57.840+02:00</app:edited><title>Use DFSCMD.EXE for scripted DFS mappings</title><content type="html">&lt;div&gt;When using DFS, you might want to consider adding DFS links for user home and profile directories to a DFS root. If you want to integrate this into a script, try the following command-line:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;"%SystemRoot%\dfscmd.exe" /map "%DFSHomeRoot%\%AD_username%" "\\%HomeServer%\%HomeShare%\%AD_username%"&lt;/b&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Variable explanation:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;%SystemRoot% = C:\WINDOWS\System32&lt;/li&gt;&lt;li&gt;%DFSHomeRoot% = the DFS root you want the folder linked to&lt;/li&gt;&lt;li&gt;%AD_username% = the sAMAccountName attribute for the user, in this case the name of the folder&lt;/li&gt;&lt;li&gt;\\%HomeServer%\%HomeShare%\%AD_username% = UNC path to the folder which needs the link&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-3239200983798303151?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/3239200983798303151/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=3239200983798303151" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/3239200983798303151?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/3239200983798303151?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/fyZHa14xjjU/use-dfscmdexe-for-scripted-dfs-mappings.html" title="Use DFSCMD.EXE for scripted DFS mappings" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/07/use-dfscmdexe-for-scripted-dfs-mappings.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE8HQHs7fSp7ImA9WxJUFEQ.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-8917501804242209346</id><published>2009-07-13T13:53:00.005+02:00</published><updated>2009-07-13T15:47:11.505+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-13T15:47:11.505+02:00</app:edited><title>Vasco Digipass with UMRA and Active Directory</title><content type="html">Several clients are using digipass systems from Vasco as their main security token system for both VPN and building access. Since this system is Active Directory integrated and features an API, we can easily integrate it within the UMRA identity management framework for automatic token provisioning on new user accounts, and token profile management on existing user accounts.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The process of assigning a token to a user account is fairly simple and involves some basic steps:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Locate a token from the digipass-pool. This is a root OU created by the Vasco software when installed in your environment.&lt;/li&gt;&lt;li&gt;Retrieve the vasco-SerialNumber attribute from the located token.&lt;/li&gt;&lt;li&gt;Supply the sAMAccountName attribute, domain name, vasco-SerialNumber and grace period # of days to the TCL script&lt;/li&gt;&lt;li&gt;The Vasco software moves the digipass object from the digipass-pool to the user OU and applies all kinds of vasco related attributes on both the user object and the digipass object. Vasco extends the Active Directory schema to support these attributes.&lt;/li&gt;&lt;li&gt;The user in Active Directory gets extra tabs in their property dialog when using the AD Users and Computers MMC snap-in.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;The challenging part when integrating Vasco into Active Directory account provisioning is to write TCL scripts. The documentation provided by Vasco is unfortunately very basic and didn't offer much help. Some of the operations, like adding authorization profiles and grace periods are not documented at all. Also, be careful that the Vasco connection to the Active Directory appears to be not bound to a specific domain controller, so integrating it with batch jobs may cause replication issues. I've determined that for most clients a delay of 5-10 seconds before executing a TCL script is sufficient to let the AD replicate to its domain controllers.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When moving user accounts to another OU, make sure you also move the digipass object to the same OU, otherwise it won't work. Also, update the vasco-linkUserToDPToken attribute on the user object and the vasco-linkDPTokenToUser attribute on the token object in your script, otherwise the link between the user and the digipass object will be broken.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Vasco uses TCL scripting for all unattended scripted operations, which can be executed using the command line tool DPAMINCMD.EXE, which is installed by default with the Vasco software inside the BIN folder.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Example TCL script to create a user account with digipass association:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set userid [lindex $argv 0]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set domain [lindex $argv 1]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set serial_no [lindex $argv 2]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set grace_period_end [lindex $argv 3]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set grace_period_minus [lindex $argv 4]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set password [lindex $argv 5]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $userid&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $domain&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $serial_no&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $grace_period_end&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $grace_period_minus&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $password&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;if [catch "user create {userid $userid domain $domain password $password}" result] {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Create: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;} else {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Create: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;if [string equal $grace_period_minus yes] {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;if [catch "digipass assign {userid $userid serial_no $serial_no search_up_ou 1 grace_period_end -$grace_period_end}" result] {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Assign-minus: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;} else {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Assign-minus: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;} else {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;if [catch "digipass assign {userid $userid serial_no $serial_no search_up_ou 1 grace_period_end $grace_period_end}" result] {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Assign: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;} else {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Assign: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A similar TCL script to delete the digipass association from a user account:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set userid [lindex $argv 0]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set domain [lindex $argv 1]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;set serial_no [lindex $argv 2]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $userid&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $domain&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts $serial_no&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;if [catch "user delete {userid $userid domain $domain}" result] { &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Create: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;} else {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Create: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;if [catch "digipass unassign {userid $userid serial_no $serial_no}" result] {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Assign: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;} else {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;puts "Assign: $result"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-8917501804242209346?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="Vasco Digipass with UMRA and Active Directory" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/8917501804242209346/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=8917501804242209346" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8917501804242209346?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8917501804242209346?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/bhJ7N-J30zI/vasco-digipass-with-umra-and-active.html" title="Vasco Digipass with UMRA and Active Directory" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/07/vasco-digipass-with-umra-and-active.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYFRX44eyp7ImA9WxJVFE4.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-8920182767331313587</id><published>2009-06-29T22:52:00.005+02:00</published><updated>2009-07-01T10:15:14.033+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-01T10:15:14.033+02:00</app:edited><title>ASP: dynamic checkbox generation</title><content type="html">UMRA features quite easy integration with IIS through the use of a COM object, which makes it very easy to send request to and receive information from UMRA. The only thing we need to do when creating a web interface for UMRA is to feed the correct information to an UMRA project.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Code samples:&lt;/span&gt;&lt;br /&gt;Set Umra = Server.CreateObject("UmraCom.Umra")&lt;br /&gt;RetVal = Umra.Connect("SRV01", 56814)&lt;br /&gt;RetVal = Umra.SetVariableText("%input%", input)&lt;br /&gt;RetVal = Umra.ExecuteProjectScript("my-project")&lt;br /&gt;RetVal = Umra.GetVariableText("%my-status%", status)&lt;br /&gt;&lt;br /&gt;The above code snippet creates an UMRA object, connects to the UMRA service, then feeds some information, executes an UMRA project and then gets the status back from the service.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Challenge on creating dynamic ASP pages:&lt;/span&gt;&lt;br /&gt;Ever had trouble creating an ASP page with a variable amount of checkboxes, depending on a database or an Active Directory query? There are easy ways to generate the checkboxes on the page and to dynamically handle the user interaction results. The trick is to generate numbered checkboxes and set the value to the data you want to be processed. The only thing you have to do to handle the submit is query all checkboxes and their values to get the data you need.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ASP page with checkboxes in form:&lt;/div&gt;&lt;div&gt;&lt;a href="http://pastie.org/528559"&gt;http://pastie.org/528559&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;a href="http://pastie.org/528559"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;ASP page to handle the submit:&lt;/div&gt;&lt;div&gt;&lt;a href="http://pastie.org/528556"&gt;http://pastie.org/528556&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-8920182767331313587?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="ASP: dynamic checkbox generation" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/8920182767331313587/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=8920182767331313587" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8920182767331313587?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8920182767331313587?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/cQHHbcbaJM0/asp-dynamic-checkbox-generation.html" title="ASP: dynamic checkbox generation" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/06/asp-dynamic-checkbox-generation.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYGR304fCp7ImA9WxJVFE4.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-8685450594472644316</id><published>2009-06-29T22:36:00.004+02:00</published><updated>2009-07-01T10:15:26.334+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-01T10:15:26.334+02:00</app:edited><title>Web autorisatie dashboard voor Active Directory</title><content type="html">Deze week ben ik met een project bezig waar een grote klant in de zorgmarkt een web dashboard aan de managers en functionarissen wil aanbieden waarbij ze op een makkelijke manier rechten aan hun gebruikers kunnen toewijzen. Het gaat hierbij om rechten op applicaties en op mappen (NTFS).&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Nu werkt deze organisatie in regio's waarbij managers en functionarissen regio-overstijgend kunnen werken. Per regio is de Active Directory verdeeld in een aparte OU structuur met eigen groepen. We hebben per regio een AUTH.regio_code groep gemaakt die als autorisatie basis voor het web dashboard moet dienen. Iedereen die lid is van 1 of meer van deze groepen zal in het web dashboard automatisch de rol krijgen van "Manager" en zal dan alleen de regio's kunnen beheren die bij de corresponderende AUTH. groep horen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Vervolgens krijgt iemand op het web dashboard de mogelijkheid om autorisaties te beheren. Eerst zal de manager een gebruiker uit Active Directory kunnen zoeken op bijvoorbeeld een gedeelte van de naam, om daarna uit een aantal matches de juiste persoon te kiezen. Het web dashboard zal alle informatie van de persoon uit het HRM systeem (RAET Beaufort) tonen, en kiest op basis van een RBAC matrix meteen de juiste rol voor de medewerker. In deze rol zitten op basis van groepnesting al de standaard rechten voor applicaties en mappen, die meteen op dezelfde pagina in de vorm van reeds aangevinkte checkboxes worden weergegven. De applicatie en map autorisaties die standaard in de rol zitten kunnen ook niet worden uitgevinkt. Alle autorisaties die door de beheerders zijn samengesteld worden dynamisch op de pagina ingeladen, en laten meteen zien welke autorisaties de gebruiker reeds heeft en welke ontbreken. Op een simpele manier kunnen extra autorisaties worden toegekend en worden dan ook meteen toegepast in Active Directory, desgewenst met een extra notificatie naar een helpdesk systeem.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Een dergelijk web dashboard kan relatief snel worden ontwikkeld, in ongeveer 3 dagen kan het volledig worden opgeleverd. Het meeste huiswerk is voor de organisatie die een RBAC matrix moet opstellen waarbij een functie/kostenplaats uit HRM wordt gekoppeld aan applicaties en mappen.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-8685450594472644316?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="Web autorisatie dashboard voor Active Directory" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/8685450594472644316/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=8685450594472644316" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8685450594472644316?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/8685450594472644316?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/kBux4iwmJdE/web-autorisatie-dashboard-voor-active.html" title="Web autorisatie dashboard voor Active Directory" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/06/web-autorisatie-dashboard-voor-active.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYHR38-eip7ImA9WxJVFE4.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-167427384892185196</id><published>2009-06-16T14:55:00.003+02:00</published><updated>2009-07-01T10:15:36.152+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-01T10:15:36.152+02:00</app:edited><title>Case: Opzetten RBAC model uit Beaufort in Active Directory</title><content type="html">Hoe zet je nou een structuur in AD op waar je applicaties en afdelingen hebt, tegenover een Beaufort systeem met kostenplaatsen en functies?&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Een oplossing is om in Active Directory een eigen groepslaag aan te maken voor de basisrollen die je wilt definieren, zeg maar een top 40 van rollen. Dit zijn dan 40 groepen waarbij je in het Notes veld de functiecodes uit Beaufort kunt zetten, gescheiden door puntcomma ";". &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Op deze manier kun je bijvoorbeeld met UMRA altijd een query uitvoeren op de Active Directory waarbij de functiecode uit Beaufort altijd een resultaat geeft op 1 AD groep. In die AD groep nest je dan weer applicatiegroepen waarmee de autorisatiematrix tot stand komt.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Voorbeeld:&lt;/div&gt;&lt;div&gt;RBAC.00.ROL1: Notes veld bevat ";FC.01.A100;"&lt;/div&gt;&lt;div&gt;RBAC.00.ROL2: Notes veld bevat ";FC.01.A101;FC.02.A201;"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;00 = locatiecode (indien van toepassing)&lt;/div&gt;&lt;div&gt;In het Notes veld kun je meerdere functiecodes kwijt waardoor je een 1-n relatie krijgt tussen rol en functie.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Met UMRA is hier eenvoudig een groepsynchronisatie mee te maken waardoor je in Active Directory de rollenmatrix zelf in beheer hebt, en bij wijzigingen zorgt UMRA ervoor dat iedereen lid wordt van de juiste RBAC groep, waardoor je ook weer de juiste geneste groepen mee zal krijgen.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-167427384892185196?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/" title="Case: Opzetten RBAC model uit Beaufort in Active Directory" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/167427384892185196/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=167427384892185196" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/167427384892185196?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/167427384892185196?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/lr-jN-m4bXY/case-opzetten-rbac-model-uit-beaufort.html" title="Case: Opzetten RBAC model uit Beaufort in Active Directory" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/06/case-opzetten-rbac-model-uit-beaufort.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk8MRnk4eip7ImA9WxJXF0w.&quot;"><id>tag:blogger.com,1999:blog-1467919521445372388.post-6031018603867588728</id><published>2009-06-11T11:50:00.004+02:00</published><updated>2009-06-11T12:08:07.732+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-11T12:08:07.732+02:00</app:edited><title>Case: AFAS - Active Directory - Datawarehouse</title><content type="html">Een grote klant heeft een internationaal netwerk waarbij het "Northern Europe" gedeelte in beheer is van de Nederlandse tak. De interne medewerkers in Nederland worden door AFAS HRM Profit beheerd, de externe en internationale medewerkers worden via de servicedesk aangevraagd en via UMRA in de Active Directory aangemaakt.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De uitdaging in deze case is het goed up-to-date houden van het Datawarehouse, dat gebruikt wordt voor rapportages. Dit Datawarehouse is van alle medewerkers, zowel intern, extern als internationaal, gevuld met data zoals kostenplaatsen, teams, manager, functiecodes, FTE om een sluitende financiele rapportage te kunnen genereren. Wat hierbij vooral lastig is, is om de data van zowel AFAS als eigen invoer voor externe medewerkers overeen te laten komen zodat het Datawarehouse dit als 1 type werknemer ziet.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;De methode die wordt gehanteerd is om de Active Directory te voorzien van attributen in de extensionAttribute 1 t/m extensionAttribute15 range, en te vullen met eerder genoemde informatie. Het Datawarehouse pikt dit 1 keer per nacht op en vult hiermee zijn eigen interne database structuur.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Problemen en oplossingen:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Personeelsnummer&lt;/b&gt;. Medewerkers uit AFAS krijgen keurig een personeelsnummer, maar externe en internationale medewerkers hebben dit niet. Elk land heeft zijn eigen range, waar AFAS zich niet aan houdt. Oplossing is om aan het Datawarehouse een uniek nummer te vragen per land, en dit aan te bieden als mogelijkheid in een formulier aan de gebruiker. De gebruiker zal zelf na moeten gaan hoeveel gebruikers er die dag zijn aangemaakt om zelf te bepalen hoe uniek het nummer is, aangezien Datawarehouse slechts 1 keer per dag een synchronisatie doet.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Verschil in stamdata&lt;/b&gt;. Datawarehouse houdt een bepaalde structuur aan, die mogelijk niet met AFAS overeen komt. Bijvoorbeeld functienamen komen geheel niet overeen. Oplossing is om in een UMRA formulier een keuzelijst weer te geven uit AFAS (alleen bij interne medewerkers) en een query uit Datawarehouse, waar de servicedesk zelf de juiste functie uit een lijst kan kiezen.&lt;/li&gt;&lt;li&gt;&lt;b&gt;In dienst/uit dienst&lt;/b&gt;. Bij interne medewerkers kun je goed zien of iemand in/uit dienst is, echter bij externe medewerkers heb je geen leidende informatie. Via UMRA zorgen we dat externe medewerkers nu via de servicedesk meteen uit dienst kunnen worden gezet en na 60 dagen krijgt de servicedesk de mogelijkheid om het account inclusief resources volledig te verwijderen.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Doorstroom in AFAS&lt;/b&gt;. Wanneer een medewerker verandert van functie moeten er zowel in de Active Directory als in Datawarehouse aanpassingen worden doorgevoerd. UMRA is zo ingesteld dat er een compare scan tussen AFAS en AD kan worden uitgevoerd waarbij zowel Team als FTE verschillen kunnen worden getoond en waar je dit meteen kunt herstellen. Dit zorgt er voor dat bij de eerstvolgende synchronisatieslag alle gegevens in Datawarehouse weer in lijn staan met AFAS.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1467919521445372388-6031018603867588728?l=arnoutvandervorst.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel="related" href="http://www.tools4ever.com/products/user-management-resource-administrator/AFAS/" title="Case: AFAS - Active Directory - Datawarehouse" /><link rel="replies" type="application/atom+xml" href="http://arnoutvandervorst.blogspot.com/feeds/6031018603867588728/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=1467919521445372388&amp;postID=6031018603867588728" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/6031018603867588728?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1467919521445372388/posts/default/6031018603867588728?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ArnoutVanDerVorst/~3/n1euaWZwDf8/case-afas-active-directory.html" title="Case: AFAS - Active Directory - Datawarehouse" /><author><name>Arnout van der Vorst</name><uri>http://www.blogger.com/profile/06824990856624324309</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="21" src="http://bp2.blogger.com/_2TYUGwWWxqA/R9ECOsstRPI/AAAAAAAAAko/7zmNpqM5p-4/S220/web.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://arnoutvandervorst.blogspot.com/2009/06/case-afas-active-directory.html</feedburner:origLink></entry></feed>

