Exchange Federation
In het vorige deel van dit artikel hebben we gekeken hoe een Exchange Federatie werkt. Vervolgens hebben we gekeken naar hoe we een Federation Trust en Organizational Configuration op kunnen zetten.
In dit deel van het artikel gaan we verder met het configureren van de federation. Er zijn namelijk weinig Exchange CAS Servers die direct aan het internet zijn gekoppeld. In veel gevallen zal hier een firewall voorstaan en als je het helemaal veilig wil doen nog een reverse proxy.
Reverse proxy configuratie
Als reverse proxy kun je bijvoorbeeld de Threat Management Gateway van Microsoft gebruiken. Hierbij gaan we er vanuit dat de regels om de verschillende Web Services te publiceren richting het internet zijn geconfigureerd. De authenticatie vindt vervolgens plaats op de TMG i.p.v. op de CAS Servers. De authenticaties die echter voor deze regels gelden zijn meestal: Form Based Authentication, Basic of NTLM/Kerberos.
De authenticatie methodes kunnen echter niet gebruikt worden voor de Federation Trust en Organizational Configuration. De gebruikersnaam en het wachtwoord worden namelijk niet geverifieerd door een Domain Controller maar door de Microsoft Federation Gateway (MFG).
Omdat deze authenticatie methode niet wordt toegestaan door de TMG voor de verschillende sites zal het verkeer worden geblokkeerd. Dit is eenvoudig op te lossen door een aparte regel in de TMG aan te maken voor de volgende sites:
- /EWS/Exchange.asmx/wssecurity
- /Autodiscover/Autodiscover.svc
- /Autodiscover/Autodiscover.svc/wssecurity
De TMG moet deze regels namelijk direct doorzetten naar de CAS Server en niet eerst de gebruiker authentiseren.
Troubleshooting cmdlet’s
Zoals bij heel veel dingen verloopt het configureren van de Federation Trust en Organizational Configuration niet altijd vlekkeloos. Je denkt bijvoorbeeld dat alles goed is geconfigureerd maar als je het vervolgens gaat testen krijg je een foutmelding.
Exchange 2010 SP1 bevat diverse cmdlet’s om het e.e.a. te testen:
- Get-FederationOrganizationIdentifier
- Get-FederationInformation
- Get-FederationTrust
- Get-OrganizationRelationship
- Test-OrganizationRelationship
- Test-FederationTrust
Get-FederationOrganizationIdentifier
Met dit cmdlet halen we de volgende informatie op:
- Wie is de organization identifier voor de Exchange organisatie;
- Wat zijn de additionele domeinen die geconfigureerd zijn voor de federatie;
- Wie is de contactpersoon van de trust;
- Is het domain proof TXT record gevalideerd door de MFG
Get-FederationInformation:
Dit cmdlet kan pas gebruikt worden wanneer er een federation trust is geconfigureerd. Met dit cmdlet halen we de volgende informatie op:
- Federated domain names;
- Target URLs van de externe Exchange organisatie;
Voorbeeld:
Get-FederationInformation –DomainName domain.com
Get-FederationTrust:
Met dit cmdlet wordt een overzicht weergeven van de geconfigureerde federation trust voor de organizatie. De volgende informatie wordt getoond indien de parameter |FL wordt gebruikt:
- ApplicationIdentifier;
- ApplicationUri attributen;
- Details over het certificaat;
- Details over het token;
Get-OrganizationRelationship:
Met dit cmdlet kunnen de instellingen worden weergeven van een organization relationship die is geconfigureerd. Informatie dat getoond wordt door dit cmdlet:
Voorbeeld:
Get-OrganizationRelationShop –Identity TrustedDomain
Test-OrganizationRelationship
Met dit cmdlet kan getest worden of de organization relationship correct geconfigureerd is en functioneert. Dit cmdlet dient gebruikt te worden i.c.m. een geldige useraccount.
Voorbeeld:
Test-OrganizationRelationship –UserIdentity johan@domain.com –Identity domain.com –Confirm
Hierbij is de UserIdentity de account waarvoor een security token wordt aangevraagd en Identity de naam van de organization relationship die getest moet worden.
Test-FederationTrust
Voert een aantal tests uit om te controleren of de federation trust correct werkt. De volgende tests worden uitgevoerd:
- Kan er connectie gemaakt worden naar de MFG;
- Zijn de certificaten geldig en geschikt om te gebruiken;
- Kan een security token opgevraagd worden bij de MFG.
Voorbeeld:
Test-FederationTrust –UserIdentity johan@domain.com
Hierbij wordt de useraccount gebruikt die is opgegeven als UserIdentity. Wanneer dit niet wordt opgegeven zal de standaard test mailbox gebruikt worden. Deze standaard test mailbox kan aangemaakt worden met het New-TestCasConnectivityUser.ps1 script.
Troubleshooting
Certificaten
Eén van de issues die je waarschijnlijk niet heel vaak zal tegenkomen is het niet geldig zijn van het certificaat. Dit kan bijvoorbeeld worden veroorzaakt omdat een certificaat niet meer geldig is omdat de datum van het certificaat is verlopen.
Het kan ook echter voorkomen dat het probleem zich voordoet wanneer een nieuw certificaat wordt aangevraagd. Het klinkt vreemd maar ik heb zelf dit probleem ook ondervonden. De MFG’s staan namelijk in de tijdzone GMT. Wanneer de Exchange omgeving zich in een andere tijdzone bevindt dan kan het voorkomen dat het certificaat is gegenereerd in de toekomst gezien vanuit de MFG. De oplossing in dit geval is wachten. In geval van GMT+1 zal je zien dat wanneer je het een uur later nogmaals probeert het gewoon zal werken.
Incorrecte externe URL voor EWS
Omdat federation o.a. afhankelijk is van de Exchange Web Services is het van belang dat de correcte externe URL is geconfigureerd. Wanneer dit niet het geval is zal de EWS url niet bereikt kunnen worden en er dus geen free/busy informatie worden weergeven.
Om dit probleem op te lossen kun je de externe URL configureren door gebruik te maken van de Exchange Management Shell:
Set-WebServicesVirtualDirectory -Identity Server\EWS* -ExternalUrl https://mail.domain.com/EWS/exchange.asmx
Daarnaast is het van belang dat de URL goed is gepubliceerd in de reverse proxy.
Wijzigingen zijn niet direct actief
Indien je wijzigingen maakt in de federation dan kan het zijn dat deze niet direct actief zijn. Het e.e.a. wordt namelijk gecached wat als gevolg heeft dat het enige tijd kan duren voordat de nieuwe configuratie actief is.
Vooreen federatie tussen twee Exchange 2010 omgevingen of een Exchange 2010 en Office 365 kan het tot 7 uur duren voordat de wijziging is doorgevoerd.
Autodiscover werkt niet
Hoewel voor de configuratie van de Federation de autodiscover functionaliteit niet noodzakelijk is is deze wel belangrijk voor het functioneren van de federation. Controleer dus of de autodiscover service url zowel intern als extern te benaderen is. Het niet correct functioneren van autodiscover zorgt er namelijk voor dat de andere Exchange organisatie niet de benodigde informatie kan ophalen van de Exchange organisatie.
Hier eindigt het tweede en laatste deel van de serie artikelen over Exchange Federation. Mocht je nog vragen hierover hebben neem dan gerust contact met mij op.












Hello Johan
Thank you for your helpful post. I have a question about TMG: you say that we can create a separate rules for some path:
•/EWS/Exchange.asmx/wssecurity
•/Autodiscover/Autodiscover.svc
•/Autodiscover/Autodiscover.svc/wssecurity
To do that we have to create a new listener ? we can’t reused a existing listener because authentication is configured ?
Thank you in advance
Hakim (@_hakimtaoussi)
Hakim,
Sorry for the late response. Can you provide some more details about your listener and rules. It should’t be necessary to create a seperate listener as also listed in the comments by Greg Taylor: http://blogs.technet.com/b/exchange/archive/2010/07/16/3410408.aspx
Regards,
Johan