identifikacia uzivatela (Re: PostgreSQL a temporary tabulky a trideni)

Kluvanek Martin kluvanek na tesnet.cz
Středa Únor 25 18:38:02 CET 2004


> Uzivatele klikaji autentizovane na Webu. Chci u jednotlivych zmen
> v databazi logovat, kdo tu zmenu udelal. Do databaze ten aplikacni
> server jde pod jednim uzivatelem. Chtel bych nejlepe jeste pred
> spustenim toho aplikacniho handleru nastavit nejakou promennou v tom
> databazovem spojeni, ktera by se pak pouzila ve vsech tedy insert /
> update / delete triggerech jako hodnota prave prihlaseneho vzdaleneho
> uzivatele a predala do logovacich tabulek.
> 
> Nejblize, jak jsem se dostal k reseni, je pokazde testovat, jestli
> uz dana pomocna tabulka existuje (protoze jsem ji mohl zdedit
> s presistentnim db spojenim), pokud ne, tak ji vytvorit, commitnout,
> ulozit hodnotu, a pouzivat. A ty manipulace s ni musim delat pres
> execute '', protoze primy select se chytne na nejaky interni
> identifikator, ktery o kousek dal uz neexistuje. Oc jednodussi by
> to bylo, kdybych vedel, ze ta tabulka vzdy bude existovat, protoze
> jsem ji jednou v ramci vytvareni datoveho schematu vytvoril,
> dokonce bych si nad ni mohl udelat primarni klice a foreign klice
> a tak, a kazda session by do ni pouze dala aktualni data.

Tiez som to riesil a nevyriesil.
Rad by som idy uzivatelov ktory poreviedli modifikaciu niekde proitokoloval. 
Najistejsie by to bolo priamo triggermi, lenze odkial do prcic sa ma trigger 
dozvediet, kto to bol, ked k tomu z hladiska DB stroja lezie vzdy DBuser s menom 
WebUser. Ta WEB aplikacia sice vie, kto je user, ale ako to povie triggeru?
Navyse aby to bolo zaujimave, tak ta aplikacia z nejakeho mne neznameho dovodu 
nepouziva persistentne spojenia ale kazde okno/dialog si otvara nove, takze je 
asi tazko nieco zakladat na zamykani zamkov alebo transakciach...

Jedina moznost s detekciou koncoveho uzivatela by asi bola zakazdym pri otvarani 
session vyplnit/zalozit TEMP tabulku s IDom uzivatela...?
No ale to uz pomaly zacina byt pekny humac, ked si predstavim, ze to je pri 
kazdom prechode odniekial niekam...

-- 
Martin Kluvanek
ved.odd. vyvoje (head of development department)
TES s.r.o
Testovani Energetickych Systemu (Testing of Energetical Systems)

Prazska 597
674 01 Trebic
Czech republic
tel:568 8384 28  (+420 5688384 28)
fax:568 8384 27  (+420 5688384 27)
homepage: http://www.tesnet.cz



Další informace o konferenci Test