Zákazník potřeboval integrovat svůj software s organizačními strukturami uloženými v Microsoft Active Directory a Azure AD (nyní EntraID). Cílem bylo načítat a replikovat data z těchto adresářových služeb, aby zákazníci nemuseli znovu vytvářet organizační strukturu v novém softwaru. Hlavní výzvou bylo to, že Active Directory nediktuje striktně strukturu, takže ji každý zákazník může mít odlišnou.
Pro první verzi jsme využili C# a .NET, protože obě technologie poskytují přímou podporu pro Active Directory i Azure AD. Tato aplikace byla volána z FileMakeru přes Toolbox plugin a běžela na Windows. Nicméně kvůli omezením, jako je nutnost Windows platformy a pomalý přenos dat z Active Directory, jsme se rozhodli řešení vylepšit.
Druhá verze aplikace byla přepsána do Pythonu, což přineslo významné výhody. Python nám umožnil, aby aplikace běžela na různých platformách, včetně Windows, macOS i Linuxu, a také pod Dockerem, což zlepšilo škálovatelnost a flexibilitu nasazení. Na jednom serveru lze spustit více instancí služby, což usnadňuje zpracování většího počtu požadavků.
Klíčovou součástí řešení je mapování polí mezi Active Directory a FileMakerem, které je součástí volání naší integrace. Toto mapování zajišťuje správný přenos dat. Implementace pro Azure AD je aktuálně v plánu, zatímco integrace pro Active Directory již byla úspěšně nasazena. Díky přechodu na Python jsme dosáhli toho, že integrace nyní funguje nejen rychleji a na více platformách, ale také flexibilněji reaguje na specifické potřeby zákazníka.