Przegląd funkcjonalności Azure: Enterprise Applications 

Publish date:

Enterprise Applications na tle innych dostawców tożsamości

Tomasz Dahms, inżynier infrastruktury IT w Cloud Infrastructure Services w Capgemini 

Azure AD staje się głównym dostawcą tożsamości zastępując kompletnie lokalnego ADFS. Funkcja Enterprise Applications zapewnia SSO dla kilku rodzajów metod autoryzacji w aplikacjach. W tym artykule przyjrzę się funkcjonalności integracji aplikacji poprzez Enterprise Applications na tle innych dostawców tożsamości. 

Azure AD Gallery 

Przy próbie dodania aplikacji jest możliwość wybrania aplikacji z pokaźnego zbioru skonfigurowanych już w większości rozwiązań, a właściwie wzorów które posiadają dokumentację do konfiguracji (jest ich blisko 3,5 tysiąca). Na szczęście jak w przypadku Okty, pozostawiona jest możliwość dokonywania dowolnych zmian w aplikacji jeśli chodzi o SAML. Po wybraniu aplikacji z galerii należy pamiętać, że nie jest to w pełni konfigurowalna aplikacja jaką można zrobić bez wzorca, przykładowo nie ma opcji zmiany metody SSO. 

Co ciekawe, nie ma ręcznej możliwości integracji aplikacji z użyciem OpenID – dostępne są jedynie aplikacje z galerii, więc jeśli brakuje aplikacji której szukamy wymagany jest kontakt z działem wsparcia. 

SAML 

SAML jest dostępny i w pełni konfigurowalny identycznie jak dla innych, jednak co zauważyłem to fakt że nie można zastąpić subject stałą wartością – można tylko wybrać z którego atrybutu wartość zostanie pobrana. Ogranicza to możliwość użycia jednego użytkownika dla aplikacji, co jest czasem stosowane w celu zabezpieczenia wewnętrznych stron intranetowych. 

Transformacja atrybutów odbywa się za pomocą opisanych na TechNet funkcji które, mimo że są obszerne, wymagają stworzenia dość nieczytelnego XML. Wydaje się, że lepszy pomysł miały tu rozwiązania takie jak Okta i Idaptive. Mają one gotowy język skryptowy, który jest do złudzenia podobny do PHP. 

Login i hasło 

Dzięki dodatkowi do przeglądarki jest możliwa integracja aplikacji, które autoryzują się loginem i hasłem w przeglądarce i nie obsługują ani SAML ani OpenID. Dodatek pomaga również w analizie ekranu logowania aplikacji i przechwyceniu akcji jakie zostaną wykonane podczas logowania. Niestety nie ma funkcjonalności edycji przechwyconych danych (nazw id, klas elementów na stronie etc.) oraz podejrzenia co dokładnie zostało przechwycone w formularzu – nawet z użyciem PowerShell jest to bardzo ograniczone co można się dowiedzieć o aplikacji. Mimo to nie miałem problemów z poprawnym działaniem dodatku po tej konfiguracji, czasem jedynie trzeba wykonać akcje powoli podczas integracji. Przypisywanie poświadczeń (loginu, hasła i innych wartości wpisywanych podczas logowania) może się odbywać na poziomie grupy, per użytkownik oraz przez akceptującego prośbę o dostęp do aplikacji. Należy jednak mieć na uwadze, że korzystanie z tego rozwiązania nie jest bezpieczne – żeby użytkownik mógł podejrzeć hasło, wystarczy że zatrzyma nawigacje w przeglądarce i sprawdzić je np. w trybie deweloperskim. 

Niedostępne metody integracji 

Jak wcześniej wspomniałem, brakuje w pełni ręcznej konfiguracji OpenID. Niestety nie znalazłem również OAuth 2.0 dostępnego w Okcie czy NTLM, Integrated Windows Authentication (IWA) które są dostępne w Idaptive. 

Natomiast „metoda” autoryzacji Linked, to praktycznie zakładka w przeglądarce dostępna dla użytkownika. 

Zatwierdzanie dostępu do aplikacji 

Jedną z funkcjonalności portalu My Applications gdzie użytkownik znajdzie wszystkie dostępne aplikacje jest możliwość poproszenia o dostęp do nowych aplikacji. Akceptacja może się odbywać automatycznie lub poprzez zaakceptowanie przez administratorów aplikacji. Ograniczone jest to do wysłania maila z informacją dla wszystkich osób z listy osób zatwierdzających i dowolna osoba może ten dostęp dać. Nie ma tu możliwości stworzenia „warstw” grup akceptujących jak to ma miejsce w Okcie (np. managerowie, właściciele aplikacji, IT). Na usprawiedliwienie braku zaawansowanych funkcji może być fakt, że zazwyczaj dostęp do aplikacji w dużych firmach odbywa się przez SelfService Portal który ma własny przepływ zatwierdzających i nikt nie korzysta z bardzo uproszczonego portalu Microsoft i pojedynczych maili z akceptacją. 

Application proxy, czyli dostęp do wewnętrznych aplikacji przez chmurę 

Mimo że rozwiązanie mało złożone jeśli chodzi o konfigurację, to jednak jest bardzo wygodne i łatww użyciu. Wymaga jedynie instalacji agenta na serwerze Windowsowym w sieci firmowej który ma dostęp do internetu. Zestawia w ten sposób swego rodzaju tunel dla określonych aplikacji. Jest to dobre rozwiązanie dla małych firm które nie mają tunelów zestawionych z Azurem i chcą dawać dostęp do swoich aplikacji dopiero po autoryzacji przez Azure AD. Dzięki możliwości grupowania agentów, można zrobić swego rodzaju loadbalacing z redundancją, a także przypisać określone aplikacje do określonych serwerów z agentem. Możliwe jest również przekierowanie do aplikacji które nie mają skonfigurowanego SSO, a same aplikacje dzięki dodatkowi w przeglądarce wyglądają identycznie jakby był w sieci firmowej. 

Conditional Access, czyli warunki dostępu do aplikacji 

Dzięki tej funkcjonalności możliwe jest tworzenie polityk dostępu do aplikacji które pozwolą na dodatkowe wymagania dotyczące tego czy urządzenie z którego jest próba zalogowania jest dołączone do naszej organizacji i czy spełnia wymagania zabezpieczeń. Można również wymagać MFA przy łączeniu się spoza adresów IP organizacji lub ograniczyć czas w którym sesja będzie pamiętana. Jest to bardzo rozbudowana funkcjonalność w przypadku korzystania z licencji Azure AD P2 i oferuje również adaptacyjne rozwiązanie MFA w przypadku podejrzanych prób logowania. 

Niestety w przypadku tego rozwiązania polityki są listą bez priorytetów i obowiązują najbardziej restrykcyjne. Dzięki ustawieniu Report-only można testować nowe polityki w środowisku bez ryzyka nieoczekiwanego zachowania i odcięcia dostępu, a funkcja What If pozwala poznać szczegółowe działanie wszystkich polityk obowiązujących dla zdefiniowanych sytuacji. Podaję tu jedynie pobieżne informacje o funkcjonalności, jako że ten element Azure AD jest dużo bardziej rozbudowany i należałby się mu przyjrzeć również w temacie MFA aby zrozumieć dokładnie na co pozwala. 

Enterprise Applications w Azure AD pozwala na łatwą integrację aplikacji z użyciem SAML oraz loginu i hasła oraz łatwe zarządzanie w przypadku standardowych rozwiązań. Niestety jeśli wymagamy bardzo określonych rezultatów zachowania Okta czy Idaptive stworzony przez CyberArk wydaje się dużo bardziej elastycznym dostawcą tożsamości, a także pozwala na wykorzystanie Azure AD do logowania się do nich samych, co może się okazać złotym środkiem w środowiskach bardzo ściśle powiązanych z produktami Microsoftu. 

Jeśli jesteś studentem lub absolwentem, a interesuje Cię praca w IT w zespole Project & Consulting, to obecnie trwa nabór na  program stażowy w IT, gdzie szukamy młodych talentów. Dowiedz się więcej i aplikuj na płatny staż w Capgemini.

Powiązane posty

Projects & Consulting

Zwyciężanie to gra zespołowa, czyli jak efektywnie budować zespoły sprzedażowe

Date icon 2021-01-22

Wskazówki jak zharmonizować pracę zespołów przetargowych przy sprzedaży usług IT

Projects & Consulting

Budujemy pozytywną przyszłość i dbamy o zieloną planetę

Date icon 2020-11-26

Akcja sprzątania plaży i lasu nad Jeziorem Dobczyckim

Projects & Consulting

Test funkcjonalności: Microsoft Defender for Endpoint jako antywirus

Date icon 2020-11-08

Test funkcjonalności: Microsoft Defender for Endpoint jako antywirus