Zastosowanie źródła danych „Użytkownicy domeny”

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2022.1.x i powyżej, autor: Krystyna Gawryał

 

Wprowadzenie

Użytkownicy, którzy uczestniczą w procesie biznesowym przyjmują określone role: są osoby odpowiedzialne za tworzenie dokumentacji, rejestrujący, akceptanci czy też pracownicy realizujący przydzielone im zadania lub których proces dotyczy w inny sposób.

W WEBCON BPS polami przechowujących informację o osobie są następujące typy atrybutów:

  • Pole wyboru
  • Wiersz danych
  • Osoba lub grupa
  • Tabela danych

Jednym ze źródeł danych dla części tych atrybutów może być Źródło danych „Użytkownicy domeny”. Niniejszy artykuł zawiera definicję i instrukcję tworzenia tego źródła danych, jego porównanie ze źródłem „Użytkownicy BPS”, a także propozycję praktycznego zastosowania w oparciu o przygotowany przypadek biznesowy.

 

Definicja i tworzenie źródła danych

Źródło danych „Użytkownicy domeny” pozwala pobierać aktualne dane dotyczące profili użytkowników z hierarchicznej bazy danych AD (Active Directory). Pobieranie danych odbywa się w sposób dynamiczny i bezpośredni, tj. z pominięciem zasobów wewnętrznych (cache) i niezależnie od stanu synchronizacji danych. Dzięki temu możliwe jest pobranie również takich informacji o użytkownikach AD, które w inny sposób nie zostałyby zwrócone.

Aby pobrać dane o użytkownikach bezpośrednio z AD należy zdefiniować odpowiednie zapytanie. W tym celu użytkownik może skorzystać z jednego z istniejących rodzajów zapytań lub stworzyć własne.

Nowe źródło danych „Użytkownicy domeny” można utworzyć wybierając w WEBCON BPS Designer Studio zakładkę Źródła danych (1), następnie gałąź Użytkownicy domeny (2) i Nowy (3).

 

Wówczas w programie otwarte zostanie następujące okno:

 

Konfiguracja źródła wymaga podania podstawowych właściwości, takich jak Nazwa czy Parametry połączenia. W przypadku wybrania niestandardowego rodzaju zapytania kluczowe jest wprowadzenie filtrującego Zapytania Active Directory, które będzie zwracało określone pozycje źródła danych.

Konfiguracja źródła umożliwia także określenie podstawowej jednostki organizacyjnej (ang. Organizational Unit, OU), w ramach której będą wyszukiwani użytkownicy, oraz wybranie kolumn zwracanych przez źródło.

 

Źródło „Użytkownicy BPS” vs. źródło „Użytkownicy domeny”

Tabela 1 poniżej przedstawia podstawowe różnice pomiędzy źródłem „Użytkownicy BPS” a źródłem opartym na zasobach AD.

 

Tabela 1. Zestawienie różnic pomiędzy wybranymi źródłami pobierania danych

Użytkownicy BPS Użytkownicy domeny
Pobieranie danych Cyklicznie, o określonych godzinach serwis WEBCON BPS synchronizuje dane z AD zapisując (aktualizując) je w bazie danych BPS, skąd są one następnie odczytywane, jeśli w którymś miejscu procesu następuje odwołanie do źródła użytkowników BPS. Funkcja zwracająca dane jest wywoływana dynamicznie, zgodnie określonymi parametrami.
Wydajność Duża, ogranicza się do odczytu z tabeli SQL. Mniejsza, każde użycie źródła wymaga wywołania funkcji pobierającej dane.
Ilość danych Liczba kolumn jest niewielka w stosunku do liczby atrybutów w AD. Zawiera najczęściej wykorzystywane dane. Aby zsynchronizować dane z atrybutu, który nie ma domyślnej kolumny, należy zmapować go do jednej z 30 dodatkowych kolumn COS_ExtensionAttribute [1-30]. Dane pobierane są „na żądanie”, nie ma potrzeby ich przechowywania w bazie.

 

Jak wynika z powyższej tabeli, ze źródła „Użytkownicy domeny” należy korzystać wyłącznie w przypadkach, gdy jest to absolutnie niezbędne i użytkownik nie może pozyskać interesujących go danych za pomocą źródła „Użytkownicy BPS”.

 

Przypadek biznesowy

Utworzony zostanie proces, w ramach którego wybrani użytkownicy BPS zostaną poinformowani o zaplanowanym webinarze „WEBCON BPS – What’s New”. Ich zadanie w ramach procesu będzie polegało na potwierdzeniu uczestnictwa w webinarze. Proces ten będzie miał charakter statystyczny – pozwoli organizatorom uzyskać informację na temat szacowanej liczby uczestników wydarzenia.

W tym celu utworzono następujący obieg:

 

Przedmiotem obiegu dokumentów będzie formularz rejestracji webinaru wraz z załącznikiem, na którym jako uczestnika webinaru będzie można wskazać wyłącznie osobę z grupy aktywnych użytkowników – czyli takich, którzy w ostatnim czasie (od 4/11/2022 włącznie) logowali się na swoje konta.

W związku z tym na potrzeby procesu utworzone zostanie nowe źródło danych „Użytkownicy domeny” o nazwie „Most current user profiles”. Pozwoli to ograniczyć liczbę otrzymanych wyników oraz uniknąć sytuacji, w których nieaktywny użytkownik zostanie wybrany z listy przez pomyłkę.

 

Konfiguracja źródła danych

Podczas konfiguracji źródła danych należy podać Rodzaj zapytania. W omawianym przypadku będzie to zapytanie Niestandardowe (z wybranego OU).

 

Wówczas, aby otrzymać dane wyłącznie tych użytkowników, którzy logowali się na swoje konta od 4/11/2022 (od godz. 8:00) włącznie, należy zbudować następujące zapytanie do źródła LDAP:

 

Przykłady innych zapytań filtrujących LDAP podano w Tabeli 2 w dalszej części artykułu.

Użytkownik ma także możliwość wskazania, jakie dokładnie kolumny zostaną zwrócone z AD. W tym celu w sekcji Kolumny zwracane z Active Directory należy zaznaczyć pola wyboru obok preferowanych wartości.

 

Ponadto, aby dodać inną niż domyślna kolumnę z wartością atrybutu z Active Directory, należy kliknąć na ikonę plusa znajdującą się na dolnym pasku w oknie konfiguracji źródła, a następnie wprowadzić jej nazwę i opis.

 

Podczas konfiguracji dodano atrybuty „title” (Stanowisko) oraz „employeeid” (ID), w którym przechowywany jest identyfikator pracownika z zewnętrznego systemu ERP. Wskazano także inne kolumny, które nie zostaną użyte w przedmiotowym obiegu (np. „manager”, „descirption”, itd.), ale mogą okazać się przydatne w innych procesach w przyszłości, ułatwiając wyszukiwanie użytkowników.

W Tabeli 3 w dalszej części artykułu przedstawiono przykłady atrybutów z AD, które mogą zostać użyte do tworzenia źródeł danych „Użytkownicy domeny”.

Wprowadzenie powyższych zmian pozwoliło skonfigurować następujące źródło danych:

 

Wykorzystanie źródła

Nowo skonfigurowane źródło można wykorzystać do zasilenia:

  • Okna wyboru z wyszukiwaniem
  • Pola wyboru z autouzupełnianiem

Z uwagi na aspekty wydajnościowe nie zaleca się stosowania tego rodzaju źródła jako słownika dla Listy rozwijanej.

 

Jak wcześniej wspomniano, na potrzeby procesu przygotowany został odpowiedni formularz. Jednym z atrybutów tego elementu jest Pole wyboru o nazwie „Participant” (1) zasilone nowo skonfigurowanym źródłem danych „Most current user profiles” (2), ustawione jako Okno wyboru z wyszukiwaniem (3):

 

Z kolei Konfiguracja zaawansowana (4) atrybutu pozwala zdefiniować kolumnę z unikalnym identyfikatorem osoby oraz jego nazwę wyświetlaną na formularzu. W tym miejscu można również podać nazwy innych kolumn dostępnych w Oknie wyboru i na podstawie których będzie można wyszukać uczestnika webinaru.

Co więcej wskazanie odpowiednich atrybutów w kolumnie Pole docelowe sprawi, że odpowiadające im kontrolki na formularzu zostaną automatycznie uzupełnione danymi użytkownika z AD. W omawianym przykładzie będą to atrybuty „E-mail address” i „Position”.

 

Formularz na kroku startowym „Webinar registration” wygląda następująco:

 

Zgodnie z powyższym rysunkiem uzupełnienia wymaga już tylko sekcja „Participant information”. Po kliknięciu na zaznaczoną ikonę Pola wyboru wyświetlane zostaje okno dialogowe, w którym osoba rejestrująca może teraz w łatwy i szybki sposób wskazać osobę spośród użytkowników spełniających kryteria zapytania – użytkowników, którzy ostatni raz zalogowani byli co najmniej 4 listopada 2022 r o godz. 8:00.

 

Po wybraniu pracownika powiązane pola na formularzu zostaną automatycznie uzupełnione danymi zwróconymi z Active Directory.

 

Obieg skonfigurowano w taki sposób, że uczestnik webinaru („Participant”) jest osobą, do której formularz trafi po przejściu ścieżką „Notify”. Po prawidłowym uzupełnieniu wymaganych pól, formularz na kroku końcowym pozytywnym „Particiaption confirmed” będzie wyglądał następująco:

 

Inne przykłady zastosowania i filtrowanie danych przez zapytania LDAP

Źródło danych „Użytkownicy domeny” może okazać się pomocne w wielu przypadkach, gdy zasadne jest pobieranie danych użytkowników przypisanych do określonej grupy (domeny) w AD, na przykład spółki zależnej, lokalnej filii przedsiębiorstwa, zarządu spółki, pracowników, stażystów. Przy odpowiednio zdefiniowanej funkcji zwracającej dane, istnieje możliwość zawężania wyników otrzymywanych z AD, np. listy urządzeń, listy nieaktywnych/zablokowanych kont użytkowników lub kont, do których logowano się x razy – patrz Tabela 2.

 

Tabela 2. Przykładowe zapytania LDAP filtrujące dane

Nazwa Symbol Budowa Przykład/Wyjaśnienie
Zapytanie podstawowe = (argument=wartość) (title=Manager)
Alternatywa | (|(argument1=wartość1) (argument2=wartość2)) (|(title=Manager)
(Division=Management))
Koniunkcja & (&(argument1=wartość1) (argument2=wartość2)) (&(title=Manager)
(Division=Management))
Negacja ! (!argument=wartość) (!title=Manager)
Większy, mniejszy, większy lub równy, mniejszy lub równy <, >,

≤, ≥

 

(argument<n)

(argument>n)

(argument≤n)

(argument≥ n)

(logoncount>50)  zwraca konta osób, które logowały się więcej niż 50 razy
Wartość dowolna * (!argument=*)

 

(!argument=ab*)

zwraca wszystkie wartości inne niż puste

zwraca wszystkie wartości zaczynające się na „ab”

Przykład: (&(l=*sk)(streetaddress=*)) zwraca zasoby z miast kończących się na „sk”
z uzupełnionym adresem

 

Atrybuty z Active Directory

Sekcja Kolumny zwracane z Active Directory w oknie źródła danych „Użytkownicy domeny” zawiera określone atrybuty, które po zaznaczeniu zostaną pobrane z AD. Wybrane atrybuty wraz z ich objaśnieniem przedstawiono w Tabeli 3.

 

Tabela 3. Przykłady atrybutów z Active Directory

Nazwa atrybutu w AD Opis
displayname Nazwa wyświetlana
sn Nazwisko
name Nazwa w formie „Imię i nazwisko”
givenname Imię
company Organizacja/Firma
countrycode Kod kraju
title Stanowisko
department Dział
info Informacja o koncie AD
homedirectory Folder domowy użytkownika
lastlogon Data ostatniego logowania
lastlogontimestamp Ostatnia aktywność
logoncount Liczba logowań
whenchanged Ostatnia modyfikacja
whencreated Kiedy utworzono
comment Komentarz
login login w formacie DOMENA\login
description Opis konta z AD
samaccounttype Typ konta
mail E-mail
mobile Telefon komórkowy
homephone Telefon
pager Pager
physicaldeliveryofficename Adres biura
postalcode Kod pocztowy
localeid Kod regionu, np. kraju, miasta itd.
st Jednostka administracyjna (stan/województwo…)
streetaddress Ulica nr
postofficebox Skrzynka pocztowa
telephonenumber Telefon
wwwhomepage Strona WWW
employeetype Typ wykonywanej pracy
employeeid ID pracownika
l Lokalizacja (np. miasto)