Nahrazení ADFS pro Office 365

 

1 Úvod

V tomto článku se budeme zabývat povýšením ADFS serverů z pohledu Office 365 na nejnovější verzi (k datu vydání ADFS na Windows Server 2012 R2, známou také jako ADFS 3.0). K ADFS přistupujeme, jako ke klíčové infrastruktuře pro přístup uživatelů k Office 365.

2 Teoretický přehled

2.1 Prerekvizity pro propojení ADFS a Office 365

Při použití ADFS, jako zprostředkovatele autentizace pro domény v Office 365, je potřeba na ADFS backend servery nainstalovat dvě prerekvizity:

  • Windows Azure Active Directory Module for Windows PowerShell, zajišťující možnost, spravovat Office 365, přes vzdálený přístup k PowerShellu
  • Microsoft Online Services Sign-In Assistant

2.2 Propojení ADFS a Office 365

Během propojování ADFS s Office 365, je možné pro MSOL domény, což jsou z pohledu Office 365 domény, které budeme v Office 365 používat, přidali jsme je do našeho tenanta přes příkaz

New-MsolDomain -Name <jméno domény>

a ověřili jejich vlastnictví přidáním DNS TXT záznamu ve tvaru MS=msxxxxxxxx, nebo MX záznamu do naší externí DNS, nastavit typ na:

  • Managed, kdy se autentizace provádí pomocí synchronizovaných identit z Active Directory, nebo Cloudových identit, vytvořených přímo v Office 365
  • Federated, kdy se autentizace provádí pomocí ADFS

Změna MSOL domény na federovanou probíhá pomocí příkazu:

Convert-MSOLDomainToFederated –DomainName <jméno domény>

Příkaz spouštíme z PowerShell konzole primárního serveru ADFS farmy, při použití ADFS farmy bez SQL serveru (pouze s lokální SQL Express databází), nebo z libovolného ADFS serveru při použití farmy s dedikovaným SQL serverem.

Změníme-li typ MSOL domény na federovanou, v Office 365 proběhne na pozadí konfigurace autentizačního mechanismu, který začne požadavky autentizace přeposílat na FQDN naší ADFS farmy a konverze uživatelských identit na federované. Po změně typu MSOL domény na federovanou a konverzi uživatelských identit, přestane uživatelům pracovat běžná autentizace.

Instalace ADFS 3.0 je velmi dobře popsaná v článku https://blogs.technet.com/b/rmilne/archive/2014/04/28/how-to-install-adfs-2012-r2-for-office-365.aspx

3 Scénáře nahrazování ADFS novější verzí

V tomto článku předpokládám, že je ADFS nakonfigurováno pro použití s Office 365 a je ve standardní konfiguraci. Při propojení ADFS s dalšími aplikacemi je potřeba použít migrační proceduru z následujícího článku https://technet.microsoft.com/en-us/library/dn486815.aspx, nebo nakonfigurovat ADFS pro další propojené aplikace ručně.

Migrace spočívá v exportu konfigurace pomocí PowerShell skriptu ze starého ADFS serveru a následném importu konfigurace do nové ADFS farmy. Předpoklad úspěšné migrace počítá s použitím stejného FQDN a stejného servisního účtu pro novou i starou ADFS farmu. Při propojení ADFS pouze s Office 365 si vystačíme bez exportu a importu konfigurace a můžeme použít i nový servisní účet.

3.1 Předpoklady pro úspěšnou migraci

  • Funkční infrastruktura pro nové ADFS (včetně Load Balancingu pro ADFS Backend a ADFS Proxy Servery a prostupů na portu 443)
  • ADFS propojené pouze s Office 365
  • Standardní konfigurace ADFS

3.2 Nahrazení ADFS farmou se stejným jménem DNS

Použijeme tam, kde nemáme možnost vystavit důvěryhodný certifikát na jiné FQDN naší ADFS farmy.

Výhody:

  • Možnost použít stejné jméno v důvěryhodném certifikátu

Nevýhody:

  • Nutnost testovat ADFS přes záznamy v HOSTS souborech
  • Možné problémy s nastavením a správnou funkčností SPN záznamů
  • Možný výpadek při přepínání DNS záznamů na nové ADFS servery
  • Výpadek při přepínání MSOL domény na Managed a následně opět do Federated
3.2.1 Postup

Migrační postup rozdělíme do několika chronologických kroků. Důsledným plněním postupu dojde pouze k nezbytně dlouhému výpadku služeb při přepínání DNS ze staré ADFS farmy na novou a při rekonfiguraci propojení ADFS s Office 365.

1. Příprava na migraci

Migrace ADFS pro Office 365 na nejnovější verzi s sebou nese nutnost překonfigurovat Office 365 pro přeposílání požadavků ADFS na nové servery a s tím související výpadek služeb po dobu rekonfigurace. Je tedy potřeba vyjednat a oznámit plánovaný výpadek a jeho délku helpdesku a uživatelům. Obvyklá doba rekonfigurace Office 365 je několik minut. Budeme-li však konvertovat doménu s několika tisíci uživateli, počítejte s delším výpadkem. Totéž platí i pro TTL vašich externích DNS záznamů, pokud je budete nuceni změnit. Pro společnost s 600 uživateli v Office 365 jsme se vešli do plánovaného výpadku o délce 2 hodin.

  • Informujte o výpadku
  • Připravte si servery, Load Balancery a infrastrukturu pro novou ADFS farmu
  • Připravte si GPO, kompatibilní se spouštěním služby ADFSSrv, která je závislá na lokální SQL databázi a tedy na lokálních servisních účtech pro SQL, nezvolíte-li ADFS farmu s dedikovaným SQL serverem
  • Servery vždy updatujte až do posledních security patchů

2. Export certifikátu

Budeme-li konfigurovat nové ADFS servery na FQDN jméno staré ADFS farmy, je potřeba myslet na export důvěryhodného certifikátu, podepsaného důvěryhodnou certifikační autoritou (nestačí naše interní certifikační autorita, protože není důvěryhodná pro Office 365), ze starého ADFS serveru a to včetně privátního klíče. Vyexportujte certifikát běžnými metodami. Například přes MMC konzoli, CertUtil.exe nebo PowerShell.

3. Vytváření servisního účtu

Na servisní účet budou navázány SPN záznamy nové ADFS farmy. Aby nedošlo k problémům s pozůstatky stávající ADFS farmy, vytvoříme nový servisní účet pro novou ADFS farmu. Obecné doporučení pro servisní účty platí i pro tento účet. Heslo s časově neomezenou platností, správný jmenný standard, zvláštní organizační jednotka. Například doména\SVC_ADFS.

· K instalaci ADFS budete potřebovat účet doménového administrátora. Servisní účet tato práva mít NEMUSÍ. Stačí, když je bude mít účet. Pod kterým instalujete ADFS.

4. Instalace a konfigurace ADFS backend role

ADFS instalujeme standardním způsobem. Například dle článku: https://blogs.technet.com/b/rmilne/archive/2014/04/28/how-to-install-adfs-2012-r2-for-office-365.aspx

Při instalaci prvního ADFS backend serveru musíme nastavit HOSTS soubor tak, aby FQDN nové ADFS farmy ukazoval na IP adresu nového ADFS backend serveru, případně LoadBalanceru před ADFS farmou. Nepokračujte dalším krokem, pokud úspěšně neotestujete funkčnost nového ADFS backendu. Test provedete z vnitřní sítě pomocí URL:

https://FQDN/adfs/ls/IdpInitiatedSignOn.aspx

5. Instalace a konfigurace ADFS Proxy role

ADFS proxy opět instalujeme podle článku https://blogs.technet.com/b/rmilne/archive/2014/04/28/how-to-install-adfs-2012-r2-for-office-365_1320_part-2.aspx

Dáváme pozor na HOSTS soubor na nově vytvářeném ADFS Proxy serveru. HOSTS soubor opět musí překládat FQDN ADFS serveru na novou ADFS Backend farmu.

6. Testy

Před testováním ADFS je potřeba ověřit, zda se na ADFS servery aplikovaly správné GPO. ADFS považujeme za úspěšně nainstalované, když jsme schopni se přes URL v bodě 4. úspěšně autentizovat z internetu vůči našemu AD.

7. Propojení s Office 365

Propojení ADFS a Office 365 je hlavním a zároveň nejdůležitějším bodem tohoto článku. I když máme připravenu novou ADFS farmu, Office 365 stále přeposílá požadavky autentizace na starou ADFS farmu. Pro překlopení Office 365 na novou ADFS farmu je potřeba:

Na STARÉM PRIMÁRNÍM ADFS serveruzkonvertovat federované MSOL domény na standardní (zde začne uživatelský výpadek). Pro uživatele je možné vygenerovat dočasná hesla, nebo přeskočit jejich konverzi na standardní.)

  • Spustíme PowerShell konzoli se zvýšenými právy
  • Připojíme se do Office 365 a zjistíme stav federovaných domén (výstup je na obrázku)Connect-MSOLService
    Get-MSOLDomain
    image
  • Zkonvertujeme federovanou doménu na standardní
    Convert-MsolDomainToStandard -DomainName domena.cz -SkipUserConversion $true -PasswordFile c:\Temp\Passwords_Office365.txt
    image
  • Přepnout vnitřní a vnější DNS záznamy / NAT veřejné IP adresy a vnitřní IP adresy tak, aby ukazovaly na IP adresu nové ADFS farmy, odmazat záznamy z HOSTS souborů

Následně na NOVÉM PRIMÁRNÍM ADFS serveru zkonvertovat MSOL domény zpět na federované a otestovat funkčnost ADFS serverů

  • Spustíme PowerShell konzoli se zvýšenými právy
  • Připojíme se do Office 365 a zjistíme stav federovaných domén (výstup je na obrázku)
    Connect-MSOLService
    Get-MSOLDomain
    image
  • Nastavíme MSOL ADFS kontext na jméno primárního ADFS Backendu nové ADFS farmy a zkonvertujeme doménu na federovanou
    Set-MsolADFSContext -Computer ADFS30.domena.cz
    Convert-MsolDomainToFederated -DomainName domena.cz
    image
  • Otestujeme přihlášením do Office 365

8. Přidání dalších serverů do farmy

V tomto bodě již máme fungující novou ADFS farmu a nyní zajistíme vysokou dostupnost ADFS přidáním dalších ADFS serverů. Pro plně vysoce dostupné řešení je potřeba minimálně dvou serverů ADFS Backend a dvou serverů ADFS proxy. ADFS servery můžeme umístit do Microsoft AZURE.

9. Provést doporučená nastavení ADFS serveru

3.3 Nahrazení ADFS farmou s jiným jménem DNS

Tento migrační postup doporučujeme, pokud máme možnost vygenerovat certifikát na nové FQDN pro ADFS farmu.

3.3.1 Výhody
  • Možnost postavit a nakonfigurovat ADFS farmu vedle stávajícího ADFS
  • Možnost otestovat a následně nakonfigurovat propojení s Office 365
3.3.2 Nevýhody
  • Nutnost použít jiné jméno v důvěryhodném certifikátu (není nevýhodou při použití wildcard certifikátu)
  • Výpadek při přepínání MSOL domény na Managed a následně opět do Federated
3.3.3 Postup

1. Příprava na migraci

Migrace ADFS pro Office 365 na nejnovější verzi s sebou nese nutnost překonfigurovat Office 365 pro přeposílání požadavků ADFS na nové servery a s tím související výpadek služeb po dobu rekonfigurace. Je tedy potřeba vyjednat a oznámit plánovaný výpadek a jeho délku helpdesku a uživatelům. Obvyklá doba rekonfigurace Office 365 je několik minut. Budeme-li však konvertovat doménu s několika tisíci uživateli, počítejte s delším výpadkem. Totéž platí i pro TTL vašich externích DNS záznamů, pokud je budete nuceni změnit. Pro společnost s 600 uživateli v Office 365 jsme se vešli do plánovaného výpadku o délce 2 hodin.

  • Informujte o výpadku
  • Připravte si servery, Load Balancery a infrastrukturu pro novou ADFS farmu
  • Připravte si GPO, kompatibilní se spouštěním služby ADFSSrv, která je závislá na lokální SQL databázi a tedy na lokálních servisních účtech pro SQL, nezvolíte-li ADFS farmu s dedikovaným SQL serverem
  • Servery vždy updatujte až do posledních security patchů

2. Export certifikátu

Budeme-li konfigurovat nové ADFS servery na nové FQDN jméno, máme situaci snazší, vygenerujeme si nový důvěryhodný certifikát, případně použijeme existující wildcard certifikát, podepsaný důvěryhodnou certifikační autoritou (nestačí naše interní certifikační autorita, protože není důvěryhodná pro Office 365.

3. Vytváření servisního účtu

Na servisní účet budou navázány SPN záznamy nové ADFS farmy. Aby nedošlo k problémům s pozůstatky stávající ADFS farmy, vytvoříme nový servisní účet pro novou ADFS farmu. Obecné doporučení pro servisní účty platí i pro tento účet. Časově neomezeně platné heslo, správný jmenný standard, zvláštní organizační jednotka. Například doména\SVC_ADFS.

  • K instalaci ADFS budete potřebovat účet doménového administrátora. Servisní účet tato práva mít NEMUSÍ. Stačí, když je bude mít účet. Pod kterým instalujete ADFS.

4. Instalace a konfigurace ADFS backend role

Před instalací ADFS serveru si připravíme DNS záznamy pro nové FQDN ADFS farmy. ADFS instalujeme standardním způsobem. Například dle článku: https://blogs.technet.com/b/rmilne/archive/2014/04/28/how-to-install-adfs-2012-r2-for-office-365.aspx

Po instalaci ADFS backendu otestujeme z vnitřní sítě pomocí URL: https://FQDN/adfs/ls/IdpInitiatedSignOn.aspxa po úspěšném testu přejdeme k instalaci ADFS proxy.

5. Instalace a konfigurace ADFS Proxy role

ADFS proxy opět instalujeme podle článku https://blogs.technet.com/b/rmilne/archive/2014/04/28/how-to-install-adfs-2012-r2-for-office-365_1320_part-2.aspx

Dáváme pozor na DNS v DMZ, které musí správně překládat FQDN našeho ADFS backendu na novou IP adresu ADFS backend farmy.

6. Testy

Před testováním ADFS je potřeba ověřit, zda se na ADFS servery aplikovaly správné GPO. ADFS považujeme za úspěšně nainstalované, když jsme schopni se přes URL v bodě 4. úspěšně autentizovat z internetu vůči našemu AD.

7. Propojení s Office 365

Propojení ADFS a Office 365 je hlavním a zároveň nejdůležitějším bodem tohoto článku. I když máme připravenu novou ADFS farmu, Office 365 stále přeposílá požadavky autentizace na starou ADFS farmu. Pro překlopení Office 365 na novou ADFS farmu je potřeba:

Na STARÉM PRIMÁRNÍM ADFS serveruzkonvertovat federované MSOL domény na standardní (zde začne uživatelský výpadek). Pro uživatele je možné vygenerovat dočasná hesla, nebo přeskočit jejich konverzi na standardní.)

  • Spustíme PowerShell konzoli se zvýšenými právy
  • Připojíme se do Office 365 a zjistíme stav federovaných domén (výstup je na obrázku)
    Connect-MSOLService
    Get-MSOLDomain
    image
  • Zkonvertujeme federovanou doménu na standardní
    Convert-MsolDomainToStandard -DomainName domena.cz -SkipUserConversion $true -PasswordFile c:\Temp\Passwords_Office365.txt
    image
  • Přepnout DNS záznamy / NAT veřejné IP adresy a vnitřní IP adresy tak, aby ukazovaly na IP adresu nové ADFS farmy, odmazat záznamy z HOSTS souborů

Následně na NOVÉM PRIMÁRNÍM ADFS serveru zkonvertovat MSOL domény zpět na federované a otestovat funkčnost ADFS serverů

  • Spustíme PowerShell konzoli se zvýšenými právy
  • Připojíme se do Office 365 a zjistíme stav federovaných domén (výstup je na obrázku)
    Connect-MSOLService
    Get-MSOLDomain
    image
  • Nastavíme MSOL ADFS kontext na jméno primárního ADFS Backendu nové ADFS farmy a zkonvertujeme doménu na federovanou
    Set-MsolADFSContext -Computer ADFS30. domena.cz
    Convert-MsolDomainToFederated -DomainName domena.cz
    image
  • Otestujeme přihlášením do Office 365

8. Přidání dalších serverů do farmy

V tomto bodě již máme fungující novou ADFS farmu a nyní zajistíme vysokou dostupnost ADFS přidáním dalších ADFS serverů. Pro plně vysoce dostupné řešení je potřeba minimálně dvou serverů ADFS Backend a dvou serverů ADFS proxy. ADFS servery můžeme umístit do Microsoft AZURE.

9. Provést doporučená nastavení ADFS serveru

4 Doporučená nastavení ADFS na Windows Server 2012 R2

Propojení ADFS s Office 365 je závislé na Token Signing a Decrypting certifikátech, které se v ADFS obnovují jednou ročně. Microsoft vytvořil pro administrátory skript, který ADFS připraví k automatické obnově federačních metadat pro Office 365.

image

Zbyněk Saloň, KPCS CZ

KPCS CZ je přední českou firmou specializující se na nasazení, správu a podporu informačních technologií, primárně zaměřenou na produkty společnosti Microsoft. Jako systémový integrátor poskytuje kvalitní podniková řešení na této platformě, která jsou v pravidelných intervalech hodnocena prvními příčkami v soutěžích Microsoft Awards. KPCS CZ disponuje předními odborníky na problematiku veřejného cloudu, tedy služeb Office 365 a Azure, ale i technologií privátního cloudu Windows Server, Hyper-V a produktů rodiny System Center.