ASP.NET 2.0 je prinesel avtorizacijski mehanizem s podporo vlog, uporabnikov, itd., vgrajenih direktno v objektni model strani. Razvijalci spletnih strani so tako lahko nadgradili varnost svojih spletnih strani s parimi kliki s tako imenovanim ASP.NET Administration WebSite orodjem. Ustvarila se je podatkovna baza aspnet_DB (končnica MDF), se dodala v ASP.NET imenik APP_DATA. Dostop enostaven, nobenega razmišljanja več o podpori prijave uporabnika na stran.
Vse lepo in prav, dokler ni bilo potrebno nadgraditi svoje obstoječe podatkovne baze s trenutnim modelom.Tukaj se pa zaplete. Več različnih povezovalnih načinov do podatkovne baze, uporabniki v eni podatkovni bazi, vezava uporabnikov v obstoječe modele, ustvarjanje nepotrebnih pogledov, itd.. Sicer so se zadeve po neuspelih poskusih urejale na “star način”: kopiranje po bazah, generiranje skript, testiranje korak po korak pa še vedno se je kaj pozabilo. Tako smo si lahko otežili življenje, če na te stvari nismo pomislili, preden smo se zapletli v uporabo integriranih mehanizmov.
Za dodajanje podatkovne baze aspnet_db je dokaj trivialen postopek, ko ga odkriješ. O tem je že dosti pisanega, vendar je dosti povpraševanja na to temo na delavnicah, zato sem napisal enostaven postopek.
Postopek:
- odprite Windows Explorer
- pojdite na naslov: C:\Windows\Microsoft.NET\Framework\v2.0.50727
- zaženite program aspnet_regsql.exe
- odpre se čarovnik ASP.NET SQL Server Setup Wizard
- sledite korakom in navodilom
Korak 1:Izberite start option
Želite dodati podatkovno bazo v svoj model (ali ustvariti novo) ali odstraniti model (pri tem vam zbriše vse in se ne da popraviti – razen kakšno restavriranje backup-a ali podobno)?
Korak 2: Povezava na podatkovno bazo in izvršitev
Poveste orodju, kako se boste povezali in na katero bazo boste dodali rešitev?
Korak 3: Preverite, če je orodje naredilo svoje
Ko čarovnik konča svoje, preverite ali je naredil pravilno. Včasih se zgodi, da je vmes človeški faktor pa izberete napačno podatkovno bazo (glavno, da ni produkcijska :)).
Vse, kar morate zdaj narediti, da spremenite nastavitve v konfiguracijski datoteki (web.config), kje se zdaj nahaja provider za Membership – objektna predstavitev avtentikacije/avtorizacije v ASP.NET-u).
O Membership-u imate dosti člankov (MSDN, Kako narediti svoj provider, 4 guys from Rolla, itd.), predlagam, da malce prebrskate po svetovnem spletu, v kolikor potrebujete še več informacij.