Pantek Productivity Pack Verify User Control Verze 2.5 29. října 2002
Obsah ÚVOD... 3 Charakteristika produktu... 3 Systémové požadavky... 3 Omezení... 3 Instalace... 4 Licencování... 4 KONFIGURACE... 5 Stránky vlastností... 5 General... 5 Localize... 6 Vlastnosti... 7 Metody... 9 Události... 10 TIPY A TRIKY... 12 Způsob činnosti produktu Verify User... 12 Strana 2 / 13
Úvod Charakteristika produktu Verify User Control je objekt ActiveX, který umožňuje napojení bezpečnostního systému Wonderware InTouch na bezpečnostní systém Windows NT (Windows 2000). Hlavní vlastnosti a přínosy: Ověření platnosti jména uživatele a jeho hesla definovaného v bezpečnostním systému Windows NT (Windows 2000) přímo z aplikace InTouch. V případě neplatného jména nebo hesla vrací objekt podrobnou informaci o důvodu neplatnosti (chybné heslo, platnost hesla vypršela, účet zablokován atp.) Platnost jména a hesla lze ověřovat i periodicky a informovat aplikaci InTouch, kdy platnost daného hesla vypršela. Možnost změnit heslo uživatele Windows NT přímo z aplikace InTouch (je nutné zadat i staré heslo). Podpora lokálních účtů Windows NT i účtů v doméně. Podpora pro dotykové obrazovky Systémové požadavky Wonderware InTouch 7.1 nebo 7.11 Microsoft Windows NT 4.0 SP6a Microsoft Windows 2000 SP3 Microsoft Windows XP Omezení Uživatelský účet hosta (Guest) musí být zakázán (disabled) ve všech doménách, kde hodláte ověřovat jméno a heslo určitého uživatele pomocí Verify User. Při ověřování platnosti uživatelského jména a hesla v doméně musí být systémový čas na doménovém serveru a na klientských počítačích synchronizován. Při ověřování platnosti uživatelského jména a hesla v doméně Windows 2000 Server musí být uživatelský účet, ve kterém běží prvek Verify User Control, zařazen do skupiny Account Operators. Při použití Windows 2000 mohou být funkce produktu Verify User omezeny (metody mohou vracet chybu odepření přístupu access denied ), v závislosti na bezpečnostních nastaveních vašeho systému. Jestliže budete volat metody produktu oproti doménovému řadiči Windows 2000, na kterém běží Active Directory, pak přístup k požadovaným Strana 3 / 13
informacím bude povolen či odepřen na základě seznamu ACL (access-control list) pro zabezpečitelné objekty. Implicitní nastavení ACL umožňuje přístup k informacím požadovaných produktem Verify User. Další informace o omezení přístupu na základě ACL lze nalézt v dokumentaci firmy Microsoft. Instalace Instalaci produktu Verify User lze začít spuštěním souboru Setup.exe. Instalace probíhá automaticky bez zásahu uživatele. Instalační program nakopíruje a zaregistruje všechny potřebné soubory na cílový počítač. Po skončení instalace je Verify User připraven k použití. Pro použití v programu Wonderware InTouch WindowMaker je třeba prvek nainstalovat do tohoto prostředí. Tato instalace se provede takto: Zobrazte dialog Wizard/ActiveX Installation (menu Special/Configure/Wizard-ActiveX Installation) Zvolte kartu ActiveX Control Installation. Ze seznamu Available ActiveX controls vyberte Pantek VerifyUser Class. Stiskněte tlačítko Install. Řádek Pantek VerifyUser Class by se měl přesunout do seznamu Installed ActiveX controls. Klikněte na tlačítko OK. Tímto by měl být produkt Verify User nainstalován. Pro vložení do okna bude nyní dostupný ve Wizards, ve skupině ActiveX Controls. Licencování Tento produkt může být používán pouze na počítačích obsahujících instalaci některého z produktů rodiny Wonderware FactorySuite 2000. Pro svou funkci dále vyžaduje platný licenční soubor PantekLic.lic. Licenční soubor je umístěn ve složce Program Files\FactorySuite\Common\License. Licence je svázána se sériovým číslem (Serial Number) produktu FactorySuite. Bez platného licenčního souboru bude Verify User spuštěn v demo režimu. Tento režim je plně funkční, avšak při prvním zobrazení a během používání se zobrazuje dialog s informacemi o produktu a údajem, že jde o demoverzi. Licenční soubory můžete objednávat u společnosti Pantek (CS) s.r.o.: Tel.: +420 495 219 072 až 3 E-mail: info@pantek.cz http://www.pantek.cz Strana 4 / 13
Konfigurace Stránky vlastností General Tato stránka vlastností slouží k zadání výchozích hodnot vlastností prvku Verify User. Následující tabulka ukazuje vazby mezi jednotlivými položkami této stránky vlastností a vlastnostmi produktu Verify User. Podrobné informace o jednotlivých vlastnostech jsou uvedeny v kapitole Vlastnosti. Položka ve stránce vlastností General Use Domain Field Use Keypad Log event when the user verification succeeds Log event when the user verification fails Log event when the change password attempt succeeds Log event when the change password attempt fails Check if the last login is valid every xxx minutes Log event when the login becomes invalid Jméno vlastnosti UseDomain UseKeypad LogSuccess LogFailure LogChangePasswordSuccess LogChangePasswordFailure CheckLoginPeriodically, CheckLoginPeriod LogLoginInvalid Strana 5 / 13
Localize Tato stránka vlastností umožňuje lokalizovat všechny texty zobrazované operátorovi. Změnit lze také písmo, kterým jsou texty v dialogových oknech vykresleny. Current Texts Aktuální nastavení pro texty zobrazované v dialozích Přihlášení (Login) a Změna hesla (Change Password). Seznam obsahuje všechny texty, které mohou být lokalizovány. Pokud vyberete určitou položku seznamu Current Texts, vybraný text se objeví v políčku Text To Edit, kde je ho možné modifikovat. Po stištění tlačítka Modify se text zvýrazněný v seznamu Current Texts změní na text uvedený v poli Text To Edit. Text to Edit Text ze seznamu Current Texts, který může být modifikován pomocí tlačítka Modify. Modify Kliknutím na toto tlačítko se změní vybraný text v seznamu Current Texts na hodnotu uvedenou v poli Text To Edit. Font Toto tlačítko umožňuje změnit písmo použité pro vypsání textů v dialogových oknech. Default Toto tlačítko vrátí nastavení všech textů a písma do výchozího stavu. Příklad vzhledu lokalizovaných dialogů: Strana 6 / 13
Vlastnosti Seznam vlastností poskytovaných prvkem Verify User. CheckLoginPeriod Datový typ: INTEGER Popis: Určuje periodu (v minutách), se kterou Verify User periodicky ověřuje platnost jména a hesla naposledy úspěšně přihlášeného uživatele. Tato funkce je aplikována pouze v případě, že vlastnost CheckLoginPeriodically má hodnotu TRUE. Změna periody za běhu aplikace (v režimu run-time) je možná, ale bude aplikována až po následném úspěšném přihlášení. CheckLoginPeriodically Popis: Určuje, zda Verify User bude periodicky kontrolovat platnost uživatelského jména a hesla naposledy úspěšně přihlášeného uživatele. Viz také CheckLoginPeriod. Změna této vlastnosti za běhu aplikace (v režimu run-time) je možná, ale bude aplikována až po následném úspěšném přihlášení. Funkce periodického ověřování může být použita například pro zjištění, že platnost hesla vypršela nebo že administrátor zablokoval účet uživatele. LogChangePasswordFailure Popis: Určuje, zda do Protokolu událostí (Event Log) bude zapsána informace o tom, že provedení operace změny hesla bylo neúspěšné. LogChangePasswordSuccess Popis: Určuje, zda do Protokolu událostí (Event Log) bude zapsána informace o tom, že provedení operace změny hesla bylo úspěšné. LogFailure Popis: Určuje, zda do Protokolu událostí (Event Log) bude zapsána informace o tom, že ověření platnosti uživatelského jména a hesla (a domény) nebylo úspěšné. LogLoginInvalid Popis: Určuje, zda do Protokolu událostí (Event Log) bude zapsána informace v případě, že periodické ověřování naposledy úspěšně přihlášeného uživatele bude neúspěšné (viz také CheckLoginPeriodically). Tato vlastnost nemá žádný význam, pokud CheckLoginPeriodically má hodnotu FALSE. Strana 7 / 13
LogSuccess Popis: Určuje, zda do Protokolu událostí (Event Log) bude zapsána informace o tom, že ověření platnosti uživatelského jména a hesla (a domény) bylo úspěšné. UseDomain Popis: Určuje, zda dialogy pro přihlášení (Login) a změnu hesla (Change Password) budou obsahovat pole doména (Domain). Pokud je hodnota FALSE, toto pole nebude v dialozích zobrazeno a ověřovaní bude vždy probíhat oproti lokálnímu bezpečnostnímu systému Windows NT (2000). UseKeypad Popis: Určuje, zda dialogy pro přihlášení (Login) ) a změnu hesla (Change Password) budou obsahovat tlačítka pro zobrazení dialogu s klávesnicí (pro dotykové obrazovky). Strana 8 / 13
Metody Seznam metod poskytovaných prvkem Verify User: INTEGER GetNTUserInfo(STRING UserName, STRING Domain, INTEGER Flags, STRING FullName) Popis: Poskytuje rozšířené informace o daném uživatelském účtu Windows NT. První dva parametry (UserName and Domain) charakterizují uživatele, ostatní parametry (Flags a FullName) jsou výstupními parametry, takže pro ně musíte specifikovat jména InTouch proměnných příslušných datových typů. Po volání této metody bude parametr Full Name obsahovat plné jméno uvedené v konfiguraci daného účtu a parametr Flags bude obsahovat kombinaci (logický součet, bitové OR) žádné, jedné nebo více následujících hodnot: 1...účet je zablokován (account disabled) 2...heslo není vyžadováno (no password required) 4...uživatel nemůže měnit heslo (user cannot change password) 8...účet je momentálně uzamčen (account locked out) 16...heslo je platné stále (password should never expire) 32...platnost hesla vypršela (password expired), při dalším přihlášení musí uživatel změnit heslo Výstupní hodnoty v parametrech FullName a Flags jsou platné pouze pokud návratová hodnota metody je rovna nule. Návratová hodnota: 0...operace provedena úspěšně 1...přístup odepřen (access denied) 2...jméno počítače nebo domény je chybné 3...specifikované jméno uživatele nebylo v dané doméně nalezeno 7...vyhrazeno, neznámá chyba VOID LogoutCurrentUser () Popis: Maže obsah interních proměnných pro jméno uživatele, doménu a heslo. Tyto proměnné jsou naplněny a používány pouze v případě, kdy je povoleno periodické ověřovaní platnosti uživatelova účtu (viz vlastnost CheckLoginPeriodically nebo odpovídající položku na stránce vlastností General). Tato metoda zastaví periodické ověřování uživatele až do dalšího úspěšného přihlášení. Strana 9 / 13
VOID ShowChangePasswordDlg (STRING UserName, STRING Domain) Popis: Zobrazí dialog pro změnu hesla. Pomocí parametrů lze specifikovat implicitní hodnoty pro políčka User Name a Domain. Obě políčka jsou v dialogu pouze pro čtení a operátor je nemůže modifikovat. Pokud operátor klikne v dialogu na tlačítko OK, pak Verify User provede dvě operace: nejprve se pokusí změnit heslo uživatele podle zadaných parametrů. Pokud se podaří heslo úspěšně změnit, Verify User ještě ověří platnost uživatelova účtu. Tato druhá operace nemusí být nutně úspěšná; například pokud uživatelův účet je zablokován (heslo ale v takovém případě změnit lze). Při zavření dialogu generuje Verify User událost ChangePasswordResult, která obsahuje informace o výsledcích provedených operací. VOID ShowLoginDlg (STRING UserName, STRING Domain) Popis: Zobrazí dialog pro přihlášení uživatele. Pomocí parametrů lze specifikovat implicitní hodnoty pro políčka User Name a Domain. Pokud operátor klikne na tlačítko OK, pak Verify User ověří platnost zadaných údajů oproti bezpečnostnímu systému Windows. Při zavření dialogu generuje Verify User událost LoginResult, která obsahuje informace o výsledku provedené operace. Události ChangePasswordResult (INTEGER Result, STRING UserName, STRING Domain) Popis: Verify User generuje tuto událost kdykoliv dokončí operaci změny hesla. Parametry události nesou následující informace: Result... výsledek operace změny hesla: 0 heslo úspěšně změněno, 1 - heslo úspěšně změněno, ale následná kontrola platnosti účtu byla neúspěšná (Windows NT umožňuje změnit heslo i v případě, kdy je účet zablokován), 2 heslo se nepodařilo změnit, 3 operátor uzavřel dialog tlačítkem Cancel (zrušit). UserName... použité jméno uživatele. Domain... použité jméno domény. LoginInvalid (INTEGER Result, STRING UserName, STRING Domain) Strana 10 / 13
Popis: Verify User generuje tuto událost pouze v případě, že je povoleno periodické ověřování uživatele (viz vlastnost CheckLoginPeriodically). Událost je generována v případě, že periodické ověření platnosti účtu uživatele selže, tzn. Vyprší platnost uživatelova hesla, administrátor zablokuje uživatelův účet apod. Parametry události nesou následující informace: Result... výsledek operace (důvod neplatnosti): 1 přístup odepřen (access denied), 2 - jméno počítače nebo domény je chybné, 3 - specifikované jméno uživatele nebylo v dané doméně nalezeno, 4 - platnost hesla vypršela (password expired), při dalším přihlášení musí uživatel změnit heslo, 5 - účet je zablokován (account disabled), 6 - účet je momentálně uzamčen (account locked out), 7 neznámá chyba, 8 ověření neúspěšné (většinou díky chybnému heslu). UserName... použité jméno uživatele. Domain... použité jméno domény. LoginResult (INTEGER Result, STRING UserName, STRING Domain) Popis: Verify User generuje tuto událost kdykoliv dokončí ověření platnosti uživatelova jména a hesla (a domény). Parametry události nesou následující informace: Result... výsledek operace: 0 úspěch, platnost potvrzena, 1 - přístup odepřen (access denied), 2 - jméno počítače nebo domény je chybné, 3 - specifikované jméno uživatele nebylo v dané doméně nalezeno, 4 - platnost hesla vypršela (password expired), při dalším přihlášení musí uživatel změnit heslo, 5 - účet je zablokován (account disabled), 6 - účet je momentálně uzamčen (account locked out), 7 neznámá chyba, 8 ověření neúspěšné (většinou díky chybnému heslu), 9 - operátor uzavřel dialog tlačítkem Cancel (zrušit). UserName... použité jméno uživatele. Domain... použité jméno domény. Strana 11 / 13
Tipy a triky Způsob činnosti produktu Verify User ActiveX objekt Verify User má grafickou podobu standardního tlačítka. Když uživatel klikne na toto tlačítko nebo zavolá metodu ShowLoginDlg, pak Verify User zobrazí dialog pro přihlášení uživatele do systému. Operátor může vyplnit své uživatelské jméno, heslo a doménu a po kliknutí na tlačítko Login se ověří platnost specifikovaných parametrů oproti bezpečnostnímu systému Windows. Výsledek této operace bude vrácen v parametrech události (LoginResult), kterou Verify User vypaluje do svého kontejneru (InTouch). Výsledek každé operace může být zapsán do Protokolu událostí (Event Log), viz nastavení na stránce vlastností General. Vzhled ActiveX objektu Verify User: Obdobným způsobem lze zobrazit a použít dialog pro změnu hesla. To lze provést pomocí metody ShowChangePasswordDlg, která zobrazí příslušný dialog. Výsledky operace budou poté obsaženy v parametrech události ChangePasswordResult. Strana 12 / 13
Dodavatel Pantek (CS) s.r.o. AppTima s.r.o. Škroupova 957 28. října 150 Hradec Králové Ostrava 500 02 702 00 Tel.: +420 495 219 072 až 3 Tel.: +420 597 577 378 E-mail: info@pantek.cz E-mail: info@apptima.cz http://www.pantek.cz http://www.apptima.cz Strana 13 / 13