» »

Visual c

Visual c

prognoob ::

Mam eno vprašanje... oziroma rabim pomoč!

V Microsoft visual studio .net 2003 delam en bankomatek, povezava z accesovo bazo pač... pa mam v bazi Uporabniško ime, geslo in pa trenutno stanje na računu... naredo sem tudi vpis v bazo...

zanima me pa, kako bi naredil dostop do spreminjanja trenutnega stanja, s pomočjo uporabniškega imena in pa gesla... pač en zavihek bi naredo, not bi prevero ali je up. ime in geslo pravilno, če ja, bi mi odprlo novo okence...

torej: 1. Zanima me kako preverjati če je Up. ime v bazi, in če je, če se ujema z geslom?!
2. Kako spreminjati določemo vrednost iz baze(v tem primeru dvigi ali pologi na račun)


upam da razumete kaj hočem in da mi bo katera dobra dušica pripravljena pomagati!


Hvala že vnaprej!

yeti ::

Varno brez server side aplikacije tega ne mores narediti, lahko pa kreiraš accounte z
dostopom do baze na SQL serverju, VENDAR to ne bo dovolj ker bo v tem primeru account
imel dostop do vseh tabel na serverju (no ja niti ne :)), vecja tezava je, da bo imel
dostop do vseh zapisov v tabeli. Tu se ti zacne komplicirati, dejansko rabis zadevo
ki sliši na ime row level security (fine grained access control ali virtual private database,
bla bla, veliko imen, implementacije se spreminjajo, tako da bos moral pogledati za tocno
tvoj SQL server), ne vem katerem sql serverju visiš, pri nekaterih se da to zrihtat zelo
lepo (npr. oracle) drugim pa manjka funkcionalnost. Nekako univerzalno
bi bilo, da vsaki vrstici, ki je zapisana dodaš logon id uporabnika in ga pri vsakem
selectu/updatu/deletu upoštevaš (where uid=...), pri insertu pa zapišeš, vendar tega NE
smeš početi v svojem clientu, to se mora odvijati na serverju, se pravi moras spisati
stored procedure za dostop do podatkov (še bolj elegantno triggerje, ce ti jih sql server
podpira na tem nivoju). User na SQL serverju ne sme imeti nobene moznosti da vpiše ta id
v bazo ali dostopa do tabel. Ma ni neka znanost, boš pa imel kar nekaj dela, še posebaj če
si do sedaj hardkodiral sql stavke v clienta.

Zgodovina sprememb…

  • spremenil: yeti ()

fiction ::

Glede na to, da je tip omenil, da uporablja Access, sklepam, da ne gre za neko
resno bancno aplikacijo.

Uporabniska imena in gesla imas lahko v neki svoji tabeli (pri cemer je lepo
ce imas gesla shranjena v obliki spremenjeni s pomocje one-time-hash funkcije).
Preverjas lahko tako, da geslo, ki ga dobis od uporabnika po istem postopku spremenis potem
pa z navadnim SELECT-om poisces ce v tabeli obstaja vrsta s tem uporabniskim imenom in geslom.

Dvig ali polog na racun, ne bi smela samo UPDATA-ati stanja, ampak bi bilo pametno v
neko tabelo pisati tudi cas ter kdo je kaj naredil.

V resni aplikaciji tako kot je rekel yeti v principu ne smes zaupati klientu in moras
veliko narediti s stored procedurami in triggerji, ampak v Accessu pomoje nicesar
od tega nimas in torej niti ne mores komplicirati s tem.

yeti ::

Argh... spregledal... dosti tipkanja za nič... :(


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Triger pokliče java funkcijo?

Oddelek: Programiranje
111458 (1221) krneki0001
»

Hack-It! (strani: 1 2 )

Oddelek: Loža
8210768 (3787) purgovich
»

[ASP.NET] problem

Oddelek: Izdelava spletišč
382073 (1723) Microsoft
»

[T-SQL] Kako vnest podatek v bazo in da ti hkrati vrne id?

Oddelek: Programiranje
162795 (2513) dmok
»

Izvorna koda mojega par dnevnega dela; ce jo malo pokomentirate :) (strani: 1 2 )

Oddelek: Programiranje
606285 (4630) Microsoft

Več podobnih tem