Autentifikáciou sa rozumie overenie identity užívateľa, t.j. overenie, že užívateľ je ten, ktorý tvrdí, že je. Overenie identity obecne prebieha na základe niečoho, čo užívateľ vie (prihlasovacie meno + heslo), čo vlastní (prihlasovací USB token, osobná čipová karta so šifrovacím a identifikačným kľúčom PKI), prípadne nejakého jeho merateľného biometrického znaku (odtlačok prsta, scan dúhovky).
Štandardne overuje meno a heslo užívateľa v D2000 proces D2000 Server. V niektorých prípadoch je výhodné, aby overovanie identity užívateľa bolo presunuté na doménu Windows, čo umožní:
- používanie tých istých hesiel do D2000 ako do Windows domény (NTLM autentifikácia),
- používanie tých istých mien a hesiel do viacerých systémov D2000, pre ich zmenu stačí zmeniť heslo na jednom mieste - heslo do Windows (NTLM autentifikácia),
- automatické prihlásenie sa do D2000 bez zadávania mena a hesla iba na základe toho, že užívateľ je prihlásený do Windows domény (Kerberos autentifikácia),
- zabezpečiť prihlásenie užívateľa do D2000 hardvérovo (prihlasovací USB token, osobná čipová karta so šifrovacím a identifikačným kľúčom PKI) tak, že sa takéto zabezpečenie použije na prihlasovanie sa užívateľa do Windows a následne sa použije Kerberos autentifikácia na prihlásenie do D2000,
- zakázanie prihlásenia užívateľa do D2000 nástrojmi pre správu užívateľov v doméne Windows,
- nastavenie parametrov, ktoré musí spĺňať heslo do D2000, nástrojmi pre správu užívateľov v doméne Windows.
Poznámka pre platformy Linux a Raspberry PI: od verzie D2000 12.2.65 (patche z 27.5.2020 a novšie) je Kerberos autentifikácia dostupná aj na platformách Linux x64 a Raspberry PI. Na sfunkčnenie je nutné vykonať nasledovné kroky:
- zaradenie Linux/Raspberry PI servera do Windows domény
(príkazom realm join meno_domény, napr realm join IPSTEST.SK) - umožnenie prístupu D2000 Serveru (kernel) k súboru /etc/krb5.keytab. Jednou možnosťou je nakonfigurovať spúšťanie D2000 Servera pod užívateľom root, inou - menej dramatickou - je nakonfigurovanie prístupových práv pre skupinu, pod ktorou je spustený D2000 Server. Napríklad ak je použitá skupina d2users, tak treba spustiť:
chgrp d2users /etc/krb5.keytab
chmod 640 /etc/krb5.keytab
Na platforme Linux bola otestovaná autentifkácia v rámci jednej domény (IPSTEST.SK) aj medzi dvoma doménami (hi.exe spustené pod užívateľom v doméne IPESOFT.SK, D2000 server na Linuxovom serveri v doméne IPSTEST.SK. V oboch prípadoch bola hodnota parametra AuthSecPrinc nastavená na SRVAPP$@IPSTEST.SK, kde SRVAPP je názov linuxového počítača zaradeného vo Windows doméne.
Poznámka 1: ak je D2000 Server spustený so štartovacím parametrom /E+RTM.ADGROUP_MEMBERSHIP_QUERY (prípadne je parameter RTM.ADGROUP_MEMBERSHIP_QUERY aktivovaný za behu v D2000 System Console), tak v rámci Kerberos/NTLM autentifikácie je zisťovaná príslušnosti užívateľa do skupín v Active Directory (AD). Tieto informácie sú následne posielané do procesu D2000 Event Handle, kde je možné na základe príslušnosti do AD skupín povoliť/zakázať prihlásenie uživateľa a prípadne nastaviť mu príslušné oprávnenia do aplikácie.
Poznámka 2: Kerberos/NTLM autentifikáciu a zisťovanie príslušnosti užívateľa do skupín v AD štandardne vykonáva D2000 Server (Kernel). Je možné ju presunúť na D2000 Event Handler proces (napr. zo sieťových dôvodov). Takýto proces musí byť spustený s parametrom "–ADAUTHENTICATOR". Ak je spustených viacero takýchto procesov, autentifikáciu vykonáva posledný spustený proces.
Metódy autentifikácie
V systéme D2000 sú podporované nasledovné metódy autentifikácie:
Metóda autentifikácie | Popis |
---|---|
D2000 | Overovanie užívateľského mena a hesla procesom D2000 Server. Toto je štandardná metóda autentifikácie, ktorá využíva meno a heslo uložené v konfigurácii objektu Užívateľ. Prihlasovací dialóg zobrazuje užívateľské meno a heslo: |
NTLM | Overovanie mena a hesla zadaného užívateľom vykonáva autentifikačný subsystém Windows NTLM (NT LAN Manager) dostupný od verzie Windows NT 4.0, pričom sa autentifikácia vykonáva v doméne, ktorú udáva konfiguračný parameter užívateľa Doména. D2000 Server získa po dokončení autentifikácie od Windows informáciu o úspešnom/neúspešnom overení užívateľského mena a hesla v doméne. Pokiaľ bola autentifikácia úspešná, podľa užívateľského mena vyhľadá objekt typu Užívateľ a skontroluje, či má užívateľ nakonfigurovanú autentifikačnú metódu NTLM ako povolenú (parameter Metódy autentifikácie), či je zhodný názov domény a či nemá zakázané prihlásenie. Prihlasovací dialóg zobrazuje užívateľské meno a heslo, v záhlaví má okrem názvu aplikácie aj text [NTLM] a pod menom a heslom doménu, do ktorej sa užívateľ prihlasuje: Poznámka: NTLM autentifikácia je použiteľná na samostatnom počítači s lokálne definovanými užívateľmi (vtedy Doména je názov počítača) ako aj vo Windows doméne (Doména je názov domény). Ak nie je možné kontaktovať autentifikačnú autoritu, prihlásenie neprebehne. Prihlasovanie sa zmení na autentifikáciu podľa D2000 a užívateľovi sa zobrazí upozornenie "Neúspešná NTLM autentifikácia. Zadajte prihlasovacie meno a heslo z D2000." |
Kerberos | Overovanie identity užívateľa vykonáva autentifikačný subsystém Windows Kerberos dostupný od verzie Windows 2000. Overuje sa identita užívateľa prihláseného do Windows, takže prihlasovanie je automatické bez prihlasovacieho okna a bez zadávania mena a hesla. D2000 Server získa od Windows Kerberos autentifikačného subsystému informáciu o mene užívateľa a doméne, v ktorej je prihlásený. Pokiaľ názov domény zodpovedá konfiguračnému parametru Doména, podľa užívateľského mena vyhľadá objekt typu Užívateľ a skontroluje, či má užívateľ nakonfigurovanú autentifikačnú metódu Kerberos ako povolenú (parameter Metódy autentifikácie) a či nemá zakázané prihlásenie. Poznámka: Sama o sebe je autentifikačná metóda Kerberos skoro tak nebezpečná, ako nakonfigurovanie parametrov /AN a /AP, ktoré umožní spustenie procesu HI bez zadania mena a hesla, pokiaľ užívateľ odíde od počítača bez zamknutia pracovnej plochy (zadanie štartovacích parametrov je ešte o niečo menej bezpečné, pretože je z nich možné heslo spätne vyčítať, pričom autentifikácia Kerberos umožňuje iba okamžité zneužitie, ale nie zistenie hesla). Preto odporúčame:
|
SPNEGO | Metóda autentifikácie dostupná až vo verziách novších ako D2000 12.00.061. Overovanie identity webového užívateľa (Tenký klient a Smart Web) vykonáva autentifikačný subsystém Windows Kerberos dostupný od verzie Windows 2000. Overuje sa identita užívateľa prihláseného do Windows, takže prihlasovanie je v prehliadači automatické bez prihlasovacieho okna a bez zadávania mena a hesla. D2000 Server získa od Windows Kerberos autentifikačného subsystému informáciu o mene užívateľa a doméne, v ktorej je prihlásený. Pokiaľ názov domény zodpovedá konfiguračnému parametru Doména, podľa užívateľského mena vyhľadá objekt typu Užívateľ a skontroluje, či má užívateľ nakonfigurovanú autentifikačnú metódu SPNEGO ako povolenú (parameter Metódy autentifikácie) a či nemá zakázané prihlásenie. Poznámka: SPNEGO autentifikácia je použiteľná iba vo Windows doméne, nie na samostatnom počítači, pretože vyžaduje softvérovú infraštruktúru, ktorá sa inštaluje iba ako súčasť radiča domény Windows. |
RFID | Metóda autentifikácie dostupná od D2000 verzie 9.1.30. Užívateľ sa identifikuje zosnímaním RFID karty. Pre funkčnosť RFID autentifikácie musí byť RFID snímač nainštalovaný na klientskom počítači v niektorom zo sériových COM portov, musí bežať proces D2000 HI s parametrami (parametre konzoly), ktoré zabezpečia, aby dokázal snímač obsluhovať. Viď Nastavenia konzoly - RFID parametre. Po zosnímaní RFID karty môžu nastať dva prípady:
|
Poznámka 1: Pre iné operačné systémy ako Windows je podporovaná iba autentifikácia D2000.
Poznámka 2: Pre iné metódy autentifikácie ako D2000 je potrebná dynamická knižnica d2auth.dll (nachádza sa v adresári D2000.EXE\bin).
Poznámka 3: Iné metódy autentifikácie ako D2000 sú podporené pre nasledovné procesy a moduly D2000: D2000 HI, D2000 GrEditor, D2000 CNF, D2000 Management Console, D2000 DDE Server, D2000 System Console, D2000 Tell, D2000 Browser, D2000 ODBC Driver.
Konfiguračné parametre autentifikácie
Na konfiguráciu metód a parametrov autentifikácie slúžia nasledovné konfiguračné parametre autentifikácie:
Názov parametra | Popis |
---|---|
AuthMethod | Prednastavená metóda autentifikácie, ktorú vyžaduje proces D2000 Server od všetkých prihlasujúcich sa užívateľov. Možné hodnoty parametra sú: |
AuthSecPrinc | Security principal autentifikácie. Parameter je vyžadovaný v Kerberos a SPNEGO autentifikácii. Security principal môže byť názov účtu, pod ktorým je spustený proces D2000 Server. Štandardne (kernel.exe je spustený ako servis pod účtom Local System) je Security principal účet počítača v doméne, ktorého názov je rovnaký ako názov počítača a na konci má znak dolár ($). Pokiaľ je proces kernel.exe spustený ručne (z príkazového riadku), je Security principal účet príslušného užívateľa v doméne. Príklad: Doména je MyCompany, server je SrvApp1, proces kernel.exe je spustený ako servis pod účtom Local System. Parameter AuthSecPrinc môže byť srvapp1$ alebo srvapp1$@MyCompany . Pokiaľ sa chcú autentifikovať aj užívatelia z inej domény OtherCompany, musí byť AuthSecPrinc=srvapp1$@MyCompany a navyše doména MyCompany musí dôverovať doméne OtherCompany. Poznámka: autentifikácia medzi doménami bola vyskúšané na serveri srvapp114v v doméne ipstest.sk, AuthSecPrinc=srvapp114v$@ipstest.sk. HI bolo spustené na počítači v doméne IPESOFT, doména ipstest.sk dôverovala doméne IPESOFT. Príklad: Doména je MyCompany, proces kernel.exe je spustený z príkazového riadka užívateľom D2User. Parameter AuthSecPrinc môže byť d2user alebo d2user@MyCompany. Poznámka: Pomocou nástrojov na správu Active Directory je možné definovať aj Security principal, ktorý nie je závislý od mena užívateľa, pod ktorým je proces kernel.exe spustený. Viac informácií viď dokumentácia k Active Directory a k utilite ktpass.exe na webe Microsoftu. |
Paralelné použitie viacerých autentifikačných metód
Pri autentifikácii NTLM/Kerberos sa užívateľské meno ani heslo neprenáša medzi počítačom s procesom D2000 Server a počítačom, kde beží užívateľský proces (HI, Cnf, GrEditor atď). Miesto toho sa po sieti prenášajú iba tzv. tokeny, ktoré si vymieňajú autentifikačné subsystémy Windows NTLM/Kerberos medzi týmito počítačmi a radičom domény. Preto autentifikácia NTLM/Kerberos nebude fungovať, pokiaľ je doménový radič (domain controller) nedostupný (porucha/vypnutie doménového radiča, prístup klienta spoza firewallu atď).
Z týchto dôvodov, ako aj z dôvodov konfiguračnej flexibility, môže klientsky proces (HI, Cnf, GrEditor atď.) použiť inú metódu autentifikácie, ako je štandardná nakonfigurovaná parametrom AuthMethod za predpokladov, že:
- pre zvolenú metódu sú správne nakonfigurované všetky konfiguračné parametre (t.j. Doména pre NTLM/Kerberos a AuthSecPrinc pre Kerberos),
- užívateľ má povolenú zvolenú autentifikačnú metódu vo svojich Metódach autentifikácie.
Výber inej metódy autentifikácie je možný pomocou štartovacieho parametra klientskeho procesu /AF<Method>, v prípade D2000 ODBC Driver sa metóda autentifikácie explicitne konfiguruje v konfigurácii DSN.
Poznámka: Proces D2000 Server pri každom prihlásení sa procesu, ktorý podporuje prihlasovanie užívateľa (HI, Cnf, GrEditor atď), načíta konfiguračné parametre autentifikácie z Windows registry a pošle ich prihlasujúcemu sa procesu. Je to kvôli možnosti dynamicky zmeniť prednastavenú metódu autentifikácie počas behu systému D2000 (napr. počas výpadku doménového radiča) a umožniť tak užívateľom, aby reštartovali HI a prihlásili sa do aplikácie inou autentifikačnou metódou (D2000) bez potreby upravovania štartovacích parametrov HI konzol všetkých užívateľov. Samozrejme takýto scenár vyžaduje, aby každý užívateľ mal povolenú autentifikačnú metódu D2000 a navyše poznal svoje "záložné" heslo do D2000 uložené v konfigurácii užívateľa.
Debugovanie autentifikácie
Na debugovanie autentifikácie slúži kategória Debug informácií DBG.Authentication, ktorá sa dá zapnúť pri štarte procesu štartovacím parametrom /E+DBG.Authentication alebo počas behu procesu pomocou D2000 System Console.
Po zapnutí debugovania bude log procesu D2000 Server alebo log klientskeho procesu (HI, Cnf, GrEditor atď.) obsahovať podrobné výpisy o jednotlivých fázach autentifikácie (pre NTLM a Kerberos autentifikáciu), ktoré sú použiteľné pre účely technickej podpory.
Súvisiace stránky:
Pridať komentár