Pożegnanie z nieinteraktywnym użytkownikiem

Pamiętacie o istnieniu bytu zwanego nieinteraktywnym użytkownikiem (z angielskiego: „non-interactive user”) na platformie Microsoft Dataverse/Dynamics365? Ja też nie pamiętałem do momentu, kiedy przestał on działać w systemie, z którym pracuje na co dzień.  Co się wydarzyło? Zacznijmy od początku.

Nieinteraktywne konta użytkowników w zamierzchłych czasach służyły do uwierzytelniania w systemie Dynamics aplikacji, które musiały mieć dostęp do API systemu (np. w celu odczytu lub zapisu danych) i nie musiały korzystać z niego za pomocą dowolnego dostępnego interfejsu użytkownika. Co więcej, dla kont tego typu nie była wymagana aktywna licencja użytkownika. Transformacja starego CRM-a w platformę SaaS i późniejsze „pożarcie” go przez brand „Power Platform” wymusił pewne zmiany w tym obszarze (np. związane z maksymalną liczbą nieinteraktywnych użytkowników), ale do pewnego momentu wszystko działało po staremu. Miało to oczywiście swoje wady, takie jak wykorzystanie dość archaicznego sposobu 1-krokowego uwierzytelniania Office 365 opierającego się na użyciu loginu i hasła, albo konieczność „pożyczania” aktywnej licencji użytkownika na czas aktywacji nieinteraktywnego konta w systemie. Grunt, że działało 😊.

Opisane powyżej przypadki użycia z historycznych przyczyn występowały również w naszym systemie. Do czasu, kiedy postanowiliśmy uruchomić „pudełkową” integrację systemu z usługą Azure Active Directory w obszarze zarządzania dostępem do środowisk Dataverse. Okazało się, że w którymś momencie wspomniany moduł integracyjny zaczął „wycinać” z systemu wszystkie konta użytkowników bez aktywnej licencji w tym również te nieinteraktywne. Zachowanie to zaobserwowaliśmy całkiem niedawno. Nie jestem pewien, czy jest to błąd, „ficzer”, zmiana w sposobie licencjonowania, czy celowa próba uprzykrzenia życia użytkownikom starych funkcjonalności i swoistego wymuszenia migracji na konta aplikacyjne wykorzystujące rejestracje aplikacji w Azure Active Directory i bardziej współczesne mechanizmy uwierzytelniania (OAuth, Client’s Secret).  Niestety nie udało mi się uzyskać jednoznacznej odpowiedzi ani ze strony społeczności systemu, ani od pracowników Microsoftu, z którymi kontaktowałem się w tej sprawie.

Jaki morał wynika z tej historii? W naszym przypadku musieliśmy niestety „ubić” wszystkie wykorzystywane do tej pory nieinteraktywne konta i zastąpić je użytkownikami aplikacyjnymi (Application Users). Pewnie z korzyścią dla nas, ponieważ stary, zardzewiały mechanizm zastąpiliśmy nowym, bardziej bezpiecznym i wykorzystującym technologie będące aktualnie na topie. Szkoda tylko, że transformacja ta została poniekąd wymuszona przez nieopisane nigdzie (celowe lub przypadkowe) zmiany w działaniu innego modułu, czego efektem był dla nas kilkugodzinny przestój w pracy, nerwy oraz kilka nowych siwych włosów na głowach.

Witajcie w nowym wspaniałym świecie chmury! I czujcie się ostrzeżeni 😉.

Total Views: 202 ,
Be the first to comment

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *