Wanneer een organisatie over meerdere domeinen binnen een Windows netwerk beschikt, of wanneer er een nieuw domein aan een bestaand netwerk wordt toegevoegd, dan zal het nodig zijn om vertrouwensrelaties tussen de domeinen op te stellen. Er zijn hier een aantal mogelijkheden voor afhankelijk van de eisen.

Wat is een Windows domein?

Binnen Microsoft netwerken is een domein de verzameling van alle gebruikers, groepen, apparaten, instellingen en soortgelijke zaken die bij elkaar horen. De gegevens hierover worden opgeslagen in een database. Dat wat zich binnen een domein bevindt, vertrouwt elkaar. Een gebruiker kan daarom gebruik maken van een printer binnen het domein omdat die printer door de gebruiker wordt vertrouwt. Ook kan een gebruiker van een domein bij bestanden komen omdat deze gebruiker vertrouwt wordt. Of de gebruiker van het domein ook het recht krijgt om van de printer gebruik te maken of bij de bestanden te komen, hangt van andere instellingen af. Dit worden de rechten genoemd. Rechten kunnen wel of niet gegeven worden aan gebruikers die binnen het domein worden vertrouwd.

Een fusie

Stel twee bedrijven gaan een fusie met elkaar aan. Ze worden één groot bedrijf. Voorheen hadden ze ieder een eigen netwerk en daarbinnen een eigen domein. Wanneer alle medewerkers na de fusie goed samen moeten kunnen werken zullen of de gebruikers en apparatuur van een domein naar het andere domein verplaatst moeten worden of zouden de domeinen van de bedrijven aan elkaar gekoppeld moeten worden.

Maar het aan elkaar verbinden van de fysieke netwerken is niet voldoende. Immers, een domein regelt alle binnen het eigen domein. Alleen door een domein naast een ander domein op hetzelfde netwerk te zetten accepteren deze nog geen gebruikers van elkaar.

Hoe het werkt

Wanneer een organisatie beschikt over meerdere domeinen, kan een gebruiker van het ene domein standaard dus geen gebruik maken van zaken die zich in een ander domein bevinden. Toch kan het soms handig zijn dat gebruikers dat wel zouden kunnen. Bijvoorbeeld na de eerder genoemde fusie.  Op die manier zouden gebruikers bijvoorbeeld gebruik kunnen maken van printers en bestanden die zich in een ander domein bevinden.

Om dit mogelijk te maken moeten de domeinen administratief met elkaar worden verbonden. Populair gezegd: ze moeten elkaar ‘vertrouwen’ om dit toe te kunnen staan. Wanneer een domein een ander domein vertrouwt dan accepteert hij onder andere de inlog controle van dat andere domein.

Situatieschets

Laten we de opzet en werking van een vertrouwen tussen domeinen illustreren aan de hand van een voorbeeld. Een organisatie, die we voor het gemak Panthera noemen, heeft een eigen domein: panthera.local. Zij heeft een tweede domein genaamd otap.local in het leven geroepen waarin zij voor ontwikkelingsmogelijkheden een aantal servers heeft geplaatst.

We willen er nu voor zorgen dat de ontwikkelaars en testers van panthera.local toegang krijgen tot de servers in otap.local. Wanneer iemand is ingelogd met een gebruiker aangemaakt in otap.local, dan mag deze niet op panthera.local komen. Deze gebruikers worden namelijk door derden gebruikt om de ontwikkeling te kunnen volgen en om acceptatietesten uit te kunnen voeren. Het vertrouwen, de trust, wordt in dit geval dus een kant opgelegd. We geven dit als volgt weer: otap.localpanthera.local.

De pijlpunt geeft aan wie de ander vertrouwt, dus niet wie toegang tot het andere domein heeft. De richting van het vertrouwen en de richting van de toegang is dus altijd tegenovergesteld. Immers, otap.local ‘vertrouwt’ panthera.local, maar panthera.local ‘vertrouwt’ otap.local in dit voorbeeld niet. Zou dat wel het geval zijn, dan stond er tussen de domeinen een lijn met twee pijlpunten weergegeven.

Tot stand brengen

Vaak worden omgevingen zo ingericht dat gebruikers in alle domeinen gebruik kunnen maken van de resources in alle betrokken domeinen. Om een dergelijke vertrouwensomgeving op te zetten, zijn meerdere stappen nodig. De ‘leverende domeinen’ (de zogenaamde trusting domains) moeten de ‘gebruikmakende domeinen’ (trusted domains) vertrouwen. Omdat dit wederzijds is, moet ieder domein alle andere betrokken domeinen dus vertrouwen.

In het beschreven voorbeeld is dit niet het geval. We werken weliswaar met twee domeinen in ons voorbeeld, maar de trust ligt maar een kant op. Daarom hoeft het ‘leverende domein’ (hier otap.local als trusting domain) alleen het ‘gebruikmakende domein’ (panthera.local als trusted domain) te vertrouwen. panthera.local hoeft otap.local dus niet te vertrouwen.

Een domein bevindt zich altijd in een forest. Forests zijn in het leven geroepen om het vertrouwen tussen domeinen gemakkelijker mogelijk te maken. We vertellen daarom feitelijk niet tegen het domein, maar tegen het forest wie daar binnen te vertrouwen is. In praktijk heb je hier niet zoveel mee te maken. Op bepaalde momenten moet je echter wel vragen beantwoorden tijdens de inrichting van een dergelijke omgeving die doelen op dit forest.

De praktijk

We gaan naar het trusting domain (otap.local), starten daar Active Directory Domains and Trusts en selecteren daar otap.local. Dan drukken we op de rechtermuisknop. Op het tweede tabblad in het verschenen dialoogvenster (“Trusts”) drukken we op New Trust en laten ons door de wizard panthera.local toevoegen. Nadat we dit hebben gedaan verschijnt de vraag of we een “external trust” of een “forest trust” willen gaan leggen.

External trusts

Een external trust wordt gebruikt wanneer de domeinen elkaar wel moeten vertrouwen maar niet alle gegevens van elkaar hoeven uit te wisselen. Dit is een goede keuze wanneer het bijvoorbeeld gaat om het leggen van een trust tussen domeinen van verschillende organisaties.

Forest trusts

Binnen een forest trust wisselen domeinen meer gegevens met elkaar uit waardoor gebruikers van het vertrouwde forest zich kunnen laten verifiëren. Een forest trust is daarom bijvoorbeeld geschikt voor domeinen binnen dezelfde organisatie.

In ons voorbeeld kiezen we daarom voor een forest trust. We moeten dan nog wel opgeven welke kant de trust op moet gaan werken. Wij kiezen hier voor een one-way, en dan voor outgoing omdat dit bepaalt dat gebruikers van panthera.local kunnen worden geverifieerd in het otap.local domein en niet andersom.

Daarop verschijnt de vraag of de trust binnen beide domeinen of alleen het otap.local domein opgegeven moet worden. Dit moet aan beide zijden, en dus kies je voor “both sides”, maar als je geen inloggegevens hebt van het andere domein dient het daar, door iemand anders, handmatig te worden opgegeven.

Nadat de inloggegevens van panthera.local zijn opgegeven en zijn gecontroleerd, verschijnt de vraag of er een forest-wide authentication of een selective authentication moet worden toegepast. Bij de forest-wide authentication worden alle gebruikers in de gelegenheid gesteld om gebruik te maken van het andere domein. Bij de selective authentication kan opgegeven worden welke gebruikers wel of niet toegang krijgen tot otap.local. We kiezen hier voor selective omdat we alleen de ontwikkelaars en testers toegang willen geven.

Vanaf nu accepteren we alle voorgestelde opties totdat we klaar zijn. In het dialoogvenster zien we dat panthera.local als trusted domain wordt genoemd en verlaten het venster.

Verdere instellingen

Openen we nu binnen de Active Directory server van otap.local Active Directory Users and Computers, dan kunnen we daar, door otap.local te selecteren en op de rechtermuisknop te drukken, kiezen voor “Delegate Control”. Met behulp van deze wizard kunnen we de administrator van panthera.local alle rechten geven om de Active Directory instelling voor otap.local aan te passen.

Voor gebruikers die op het otap.local domein mogen komen, maken we een beveiligingsgroep binnen panthera.local aan. Wij openen daarna Active Directory Users and Computers binnen otap.local en zoeken de computer waar toegang toe gegeven moet worden. Hier kiezen wij met de rechtermuisknop voor de properties en dan het tabblad “Security”. Op deze plek voegen wij de daarnet aangemaakte groep uit panthera.local toe, dit door bij de groep de optie “Allow to authenticate” in het vak daar onder aan te vinken.

Vervolgens kunnen wij rechten geven aan deze groep waar dat nodig is op deze machine, bijvoorbeeld aan een share. De daarvoor aangemaakte groep van panthera.local kan daarvoor gebruikt worden.

Remote Desktop Services

Misschien is het nodig dat gebruikers van panthera.local via RDP machines binnen otap.local kunnen overnemen. Als daar geen remote desktop services op zijn geïnstalleerd, dienen deze gebruikers lid te zijn van de administrator group.

Het enige wat dan nog gedaan hoeft te worden is de groep die is aangemaakt binnen panthera.local toe te voegen aan de Administrators group in Builtin van otap.local. Zijn het geen administrators, dan dienen de remote desktop services geïnstalleerd te zijn en moet de groep zoals andere users of groepen binnen het otap.local domein daar rechten voor toegekend krijgen.

Conclusie

Het is mogelijk om meerdere domeinen op deze manier met elkaar te verbinden, zodat vanuit het ene domein gebruik gemaakt kan worden van bepaalde resources binnen het andere domein. Op die manier kunnen organisaties gemakkelijk met elkaar samenwerken, kunnen fusies technisch ondersteund worden zonder dat er ingrijpende migraties nodig zijn en kunnen taken om veiligheidsredenen gescheiden worden.

Of het opzetten van trusted domains de beste oplossing is om uw probleem op te lossen, kan alleen beoordeeld worden na analyse van uw vraag. Wilt u daar ondersteuning bij krijgen, dan hopen wij vanzelfsprekend dat u ons daarvoor inschakelt!