Jednym z punktów migracji klienta do Amazon Web Services było włączenie SSO (Single Sign On) – co jest bardzo wygodnym rozwiązaniem. Po szybkiej weryfikacji (jakie mamy możliwości), okazało się, że możemy użyć ADFS. Klient już wykorzystywał ADFS pod inne usługi, zatem mogliśmy pominąć etap przekonywania Security Team.

Po kilku dniach walki z różnymi zawiłościami Ping Federate udało się włączyć SSO, zrobić ładną pętlę przekierowań przez wspomnianego ADFS. Zwracany SAML miał wszystko czego potrzebujemy, a Windchill na to odpowiedział… „Error 500”.

Bardziej dogłębna lektura dokumentacji ujawniła, że SSO z ADFS jest jak najbardziej przez Windchilla wspierane, ale tworzenie nowego użytkownika na podstawie otrzymanego z ADFS SAML’a już nie. Windchill potrzebuje bazy użytkowników do porównania, a to najwygodniej dostarczyć odpytując kontroler domeny jakimś ldap’em, jeszcze lepiej z SSL.

Infrastruktura w AWS i kontrolery domeny w serwerowniach klienta

 

Wystawienie kontrolera na świat raczej nie przejdzie przez Security Team, a przecież musimy je jakoś odpytać.

Trzeba się spiąć z klientem VPN i przez tunel odpytywać kontrolery bezpiecznym ldaps. Niestety, żeby nie było tak prosto, to w AWS już kilka środowisk działa, każde w innym VPC i każde musi się dostać ze swoim zapytaniem do AD.

Co zrobić, jak żyć?

Wariantów było wiele (to tylko kilka):

  • Użyć Transit Gateway i robić NAT po stronie klienta

Niestety, istniejące już VPC pokrywały się adresami z tym, co klient miał w swojej sieci. Oczywiście dałoby się to obejść, natomiast naglił nas czas, a zabawy z routingiem w globalnej organizacji mogły ciągnąć się latami.

  • Dodać nowe VPC z siecią, której klient jeszcze nie ma, zrobić routing, peering między pozostałymi VPC, dodać VPN Gateway do tego VPC.

Krótka prezentacja (która naświetliła klientowi problem), zaowocowała wypracowaniem stanowiska, że tworzymy nowe VPC, robimy routing, peering między pozostałymi VPC, łączymy VPN i stawiamy w tym VPC AWS Directory Service.

Tak też było, ale niestety okazało się, że ograniczenia tego ostatniego nie bardzo pozwalają na odpytywanie protokołem ldap o obiekty w domenie klienta. Tak – mała porażka… Nie wspominając już o ustawiania Trust Relationship między domenami.

W między czasie, żeby nie blokować developmentu jakiegoś dodatkowego narzędzia, wystawiliśmy w VPC zwykłego Amazon Linux i prostym tunelem SSH ominęliśmy kilka ograniczeń związanych z brakiem tranzytowych VPC w AWS.

Kolejnym podejściem było wystawienie w AWS Kontrolera domeny klienta w trybie tylko do odczytu. Takie rozwiązanie zapewniało dostęp do aplikacji nawet w przypadku problemów z tunelami VPN. Zorganizowanie VPN poszło nadspodziewanie dobrze.

Już myśleliśmy, że jesteśmy blisko: kontroler tylko do odczytu, dało się go odpytać ldap i wszystko było pięknie, ale nie dla Security klienta, które wcześniej zgodziło się na taką opcje. Co poradzić, Security wie swoje i klucza publicznego do wewnętrznego CA nam nie dadzą – ehh te PKI.

Niesieni pewną emocją, uznaliśmy, że dość już tego pięknego tańca. Szybki przegląd stanu:

  • VPC spięte VPN z siecią klienta – jest
  • Dane logowania do AD przez ldap – jest

 

Czego brakuje?

Czegoś na kształt proxy ldap do Active Direcotry. Stawiamy VPC z VPN, ciskamy zapytaniami ldap w to proxy, następnie ono nas gładko przekierowało do AD klienta i byliśmy w domu.

Kolejne 5 godzin prób i TAADAAM – działa. OpenLDAP daje radę. Weryfikacja w Windchillu i po problemie. EC2 z OpenLdap działa i… w zasadzie to się nudzi.

Hmm, a może by tak to wsadzić w kontener docker?

Hmm, a może by ten kontener uruchomić w ECS?

Hmm, w sumie persistent storage to nie potrzebuje, to może Fargate?

Zbudowanie kontenera z LDAP Proxy na z CentOS to w sumie kilka linijek. Potem szybki upload do ECR, definicja Taska i można tworzyć serwis.
Tylko jak kierować ruch na ten serwis? Przecież IP będzie za każdym razem inny. Może przez LoadBalancer? – nie.

Definiując Serwis można użyć opcji „Service Discovery”, która to opcja tworzy Hosted Zone w Route53 i aktualizuje rekord A prowadzący do serwisu – genialne. Teraz tylko wystarczy taką Hosted Zone przypiąć do VPC z Windchillem i strzelać zapytania ldaps do zarejestrowanej tam nazwy.

Na koniec (żeby się specjalnie później tym nie interesować) wystarczy zdefiniować prosty healthcheck, dzięki któremu ECS będzie podmieniał nam niedziałający kontener na nowy – zwykle w ciągu minuty.

Ile wyniosły koszty?

  • Opcja 1 z AWS AD Service – około $90/miesiąc
  • Opcja 2 z EC2, która była Kontrolerem domeny w trybie Read-Only – około $80/miesiąc
  • Opcja 3 z kontenerem w trybie uruchamiania Fargate – około $10 (0,25CPU z 1GB RAM)

 

How useful was this post?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 14

No votes so far! Be the first to rate this post.

W przypadku naruszenia Regulaminu Twój wpis zostanie usunięty.

    _Wszystkie wpisy z tej kategorii

    Podejśćie Cloud Native: Modernizować istniejące czy budować od podstaw natywne aplikacje chmurowe?

    Czym są aplikacje wie chyba każdy. A jak jest z pojęciem Cloud Native? Być może każdy, no prawie każdy, coś słyszał i będzie…
    Czytaj dalej

    Czy Edge to nowa chmura?

    Wiele organizacji, które przyjęły chmurę, traktuje Edge jako naturalne rozszerzenie swoich rozwiązań opartych na niej. Z drugiej strony, te firmy, które są na…
    Czytaj dalej

    Obliczenia kwantowe: Kot Schrödingera zadomowił się w chmurze

    Zapnij pasy i dołącz  do mnie w podróży do świata, w którym kot może być zarówno martwy, jak i żywy, a cząsteczka może…
    Czytaj dalej

    Czy chmura hybrydowa i multi-cloud obronią Cię przed vendor lock-in? Czy rzeczywiście musisz się tego wystrzegać?

    Uzależnienie od dostawcy (vendor lock-in), to pojęcie nad wyraz często łączone z branżą IT, a w ostatnich latach szczególnie z chmurą obliczeniową, chociaż…
    Czytaj dalej

    (r)Ewolucja w zarządzaniu danymi produkcyjnymi. Platformy danych w chmurze

    Platformy danych oparte na chmurze stają się przełomem w zarządzaniu danymi produkcyjnymi. W przeszłości firmy zmagały się z zarządzaniem ogromnymi ilościami danych generowanych przez…
    Czytaj dalej

    Jak AI Data Discovery pomaga firmom produkcyjnym?

    Odkryj przyszłość przemysłu produkcyjnego dzięki usłudze AI Data Discovery i chmurze! Poznaj, jak te technologie i usługi eliminują straty i zwiększają efektywność branży…
    Czytaj dalej

    Migracja do chmury i modernizacja aplikacji Airline Rewards: mapowanie wymagań architektury

    W tym artykule przeprowadzę Cię przez kroki, wybory techniczne i kompromisy związane z migracją i modernizacją aplikacji do chmury publicznej, kładąc nacisk na…
    Czytaj dalej

    Jak właściwie rozumieć chmurę publiczną w 2023? I dlaczego jest to takie trudne?

    Chmura ciągle się zmienia i ewoluuje. To co widzimy dziś, to nie to samo było wczoraj i nie to samo co będzie jutro.…
    Czytaj dalej

    Przyspieszenie wdrożenia koncepcji Przemysłu 4.0

    Cyfrowa transformacja i podążanie w kierunku idei Przemysłu 4.0 oraz Inteligentnej Fabryki (w AWS) nie należą do łatwych. Najczęstsze przeszkody to utknięcie na…
    Czytaj dalej

    Jak zbliżyć się do Przemysłu 4.0?

    Rozwijaj biznes dzięki cyfrowej transformacji. Zmiany obejmują także komunikację i przygotowanie pracowników – bez ich poparcia i zaangażowania, wdrożenie będzie znacznie trudniejsze. Sprawdź,…
    Czytaj dalej

    Jak wdrożyć założenia Przemysłu 4.0 mądrzej, szybciej i łatwiej?

    Pojęciem związanym z Przemysłem 4.0 jest Smart Factory - inaczej mówiąc "inteligentna fabryka". Ten typ fabryki oparty jest na zintegrowanych systemach przy wykorzystaniu…
    Czytaj dalej

    Chmura napędza cyfrową transformację

    Chmura coraz częściej stanowi kluczowy aspekt powodzenia procesu transformacji cyfrowej. Rozmowa z Christianem Thiem, starszym analitykiem biznesowym w TT PSC Germany GmbH, dostarczy…
    Czytaj dalej

    Co musisz wiedzieć o serverless computing?

    Serverless cmputing nadal budzi sporo wątpliwości, szczególnie wśród tych środowisk, które właśnie zaczynają korzystanie z usług chmurowych lub dopiero planują migrację do chmury…
    Czytaj dalej

    Czym jest DevOps as a service i czemu warto z tego skorzystać?

    Oszczędność, skrócenie czasu wdrażania zmian oraz weryfikowanie ich poprawności – to tylko kilka przykładowych korzyści, których gwarantem jest DevOps. Ta innowacyjna metodologia wprowadziła…
    Czytaj dalej

    9 powodów, dla których powinno się wykorzystywać chmurę w prowadzeniu biznesu

    Zgodnie z raportem firmy RightScale „2019 State of the Cloud Report from Flexera”, aż 94% firm używa chmury. To nie przypadek, że tyle…
    Czytaj dalej

    Jak zacząć przygodę z Azure i przygotować się do certyfikacji AZ-900

    Zapotrzebowanie na specjalistów w obszarze Cloud stale rośnie. Jak zdobyć szeroki zakres kompetencji i szybko odnaleźć się w temacie chmury? Najlepiej zacząć od…
    Czytaj dalej

    Chmura na czas kryzysu, czyli jak usprawnić pracę w swojej firmie

    Świat, który znaliśmy przez ostatnie lata mocno się zmienia. Wymusza na nas zmianę przyzwyczajeń, a także sposobów w jaki pracujemy i realizujemy nasze…
    Czytaj dalej

    Jak zadbać o bezpieczeństwo aplikacji serverless w AWS?

    Konferencja AWS re:Invent 2019, podobnie jak jej poprzednie edycje, obfitowała w ciekawe wykłady typu breakout sessions, których celem było przybliżenie uczestnikom wybranego zagadnienia…
    Czytaj dalej

    Parametry SSM w automatyzacji AWS

    Jakiś czas temu zostałem zaangażowany w projekt, który miał dostarczyć Windchilla w sposób wysoko dostępny – w sumie nic nowego, klaster załatwia sprawę…
    Czytaj dalej

    Jak dotknęliśmy chmur – relacja z AWS re:invent 2019

    Udział w konferencji AWS re:Invent wymaga od uczestników, pomijając finansowanie, nieco zaangażowania i odrobiny samozaparcia. W naszym przypadku zakup wejściówek na konferencje w…
    Czytaj dalej

    Najważniejsze nowości z AWS re:Invent 2019

    Ciekawi Cię jakie nowości zostały zaprezentowane na AWS re:Invent, ale nie masz czasu stale przeglądać doniesień z Vegas? Nie musisz już szukać. Specjalnie…
    Czytaj dalej

    Jak wykorzystać Talend Open Studio w branży medycznej?

    Wykorzystywanie nowoczesnych technologii w medycynie jest coraz powszechniejsze. Papierowe karty pacjentów wypadają z obiegu i zastępują je elektroniczne formy przechowywania danych. Proces digitalizacji…
    Czytaj dalej

    Czym jest chmura Amazon Web Services?

    Chmura obliczeniowa to jedna z najdynamiczniej rozwijających się technologii na świecie. Stopniowo wypiera tradycyjne rozwiązania serwerowe, zgarniając dla siebie coraz większą część rynku.…
    Czytaj dalej

    Dlaczego serverless jest przyszłością aplikacji

    Co kilka lat, w świecie IT, pojawia się nowe, przełomowe rozwiązanie. Aktualnie, wszystkie oczy są skupione na Machine Learning(ML) oraz Sztucznej Inteligencji(AI). Wcześniej…
    Czytaj dalej

    _Zostańmy w kontakcie

    Skontaktuj się