ASP.NET Web Pages - WebSecurity-objekti
- Edellinen sivu WebPages luokka
- Seuraava sivu WebPages tietokanta
Kuvaus
WebSecurity-objekti tarjoaa turvallisuutta ja todennusta ASP.NET Web Pages -sovelluksille.
WebSecurity-objektin avulla voit luoda käyttäjätilin, kirjautua sisään ja ulos, uudelleen asettaa tai muuttaa salasanoja ja niin edelleen.
WebSecurity-objektin referenssikäsikirja - Ominaisuudet
Ominaisuudet | Kuvaus |
---|---|
CurrentUserId | Hanki nykyisen käyttäjän ID. |
CurrentUserName | Hanki nykyisen käyttäjän nimi. |
HasUserId | Hanki arvo, joka osoittaa, onko nykyisellä käyttäjällä käyttäjä ID. Jos on, palauta true. |
IsAuthenticated | Hanki nykyisen käyttäjän todennustila. |
WebSecurity-objektin referenssikäsikirja - Menetelmät
Ominaisuudet | Kuvaus |
---|---|
ChangePassword() | Muuta käyttäjän salasana. |
ConfirmAccount() | Vahvista Tilin voimassaolo ja aktivoi Tilin. |
CreateAccount() | Luo uusi käyttäjätili. |
CreateUserAndAccount() | Luo uusi käyttäjätili. |
GeneratePasswordResetToken() | Luo salasanan uudelleen asettamisen vahvistustokenin, joka voidaan lähettää käyttäjälle sähköpostitse. |
GetCreateDate() | Palauttaa päivämäärän ja kellonajan, jolloin määritetty jäsenyys Tilin luotiin. |
GetPasswordChangeDate() | Palauttaa päivämäärän ja kellonajan, jolloin määritetty jäsenyys Tilin salasana muutettiin viimeksi. |
GetPasswordFailures SinceLastSuccess() |
Palauttaa virheellisten salasanojen lukumäärän, jotka on syötetty viimeisestä onnistuneesta kirjautumisesta tai jäsenyys Tilin luomisesta. |
GetUserId() | Palauttaa käyttäjän ID:n määritetystä käyttäjätunnuksista. |
GetUserIdFrom PasswordResetToken () |
Palauta käyttäjä ID salasanan palautuslipusta. |
InitializeDatabaseConnection() | Aloita jäsenyysjärjestelmä yhdistämällä käyttäjätietoja sisältävä tietokanta. |
IsAccountLockedOut() | Indikoitaa, onko määritettyjä jäsenyystiliä lukittu liian monien epäonnistuneiden salasanayritysten vuoksi. |
IsConfirmed() | Palauta arvo, joka viittaa siihen, onko käyttäjä vahvistettu. |
IsCurrentUser() | Palauta arvo, joka viittaa siihen, vastaako kirjautunut käyttäjänimi määritettyyn käyttäjänimeen. |
Login() | Kirjaudu sisään käyttäjä. |
Logout() | Kirjauta ulos käyttäjä. |
RequireAuthenticatedUser() | Jos käyttäjä ei ole kirjautunut sisään, aseta HTTP-tilakoodi 401 (ei sallittu). |
RequireRoles() | Jos nykyinen käyttäjä ei kuulu määritettyyn rooliin, aseta HTTP-tilakoodi 401. |
RequireUser() | Jos nykyinen käyttäjä ei ole määritetty käyttäjä, aseta HTTP-tilakoodi 401. |
ResetPassword() | Näytä salasanan palautuslippu salasanan palauttamiseksi. |
UserExists() | Tarkista, onko käyttäjä olemassa. |
Tekninen tieto
Nimi | Arvo |
---|---|
Class | WebMatrix.WebData.WebSecurity |
Namespace | WebMatrix.WebData |
Assembly | WebMatrix.WebData.dll |
Aloita WebSecurity-tietokanta
Ennen kuin käytät WebSecurity-objektia, sinun on luotava tai aloitettava WebSecurity-tietokanta.
Luo tai muokkaa _AppStart.cshtml-sivua web-kansiossa.
Kirjoita seuraava koodi tähän tiedostoon:
_AppStart.cshtml
@{ WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true); }
Verkkosivusto suorittaa aina yllä olevan koodin käynnistettäessä. Se aloittaa WebSecurity-tietokannan.
"Users" on WebSecurity-tietokannan nimi. (Users.sdf)
"UserProfile" on käyttäjäkonfiguraatiotietojen sisältävän tietokantataulun nimi.
"UserId" sisältää käyttäjä ID:n sarakkeen nimi (pääavain).
"Email" on käyttäjänimen sisältävä sarakkeen nimi.
Viimeinen parametri true on looginen arvo, joka osoittaa, että käyttäjän profiilitaulun ja jäsenyystaulun (jos ne eivät ole olemassa) tulisi luoda, muuten false.
Vinkki: Vaikka true viittaa tietokantataulujen automaattiseen luomiseen, tietokanta itse ei luoda automaattisesti. Se on oltava olemassa.
WebSecurity-tietokanta
UserProfile-taulun jokainen tietue edustaa käyttäjää, mukaan lukien käyttäjä ID (pääavain) ja käyttäjänimi (sähköposti):
UserId | Sähköposti |
---|---|
1 | john@johnson.net |
2 | peter@peterson.com |
3 | lars@larson.eut |
Membership-taulu sisältää jäsenyysinformaation, kuten milloin käyttäjä luoi käyttäjän ja onko (ja milloin) jäsenyys vahvistettu.
Näin (jotkut sarakkeet eivät ole lueteltu):
UserId | Luontipäivämäärä | Vahvista Lippu |
Onko Vahvista |
Viimeinen Salasanan virhe |
Salasana | Salasanan muuttaminen |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULL | True | NULL | AFNQhWfy.... | 12.04.2012 16:12:17 |
Huomautus:Jos haluat nähdä kaikki sarakkeet ja kaikki sisällön, avaa tietokanta WebMatrixin kautta ja tarkastele jokaisen taulun.
Yksinkertainen jäsenyysasetus
Jos verkkosivustosi ei ole konfiguroitu käyttämään ASP.NET Web Pages -jäsenyysjärjestelmää SimpleMembership, virhe voi tapahtua käyttäessäsi WebSecurity-objektia.
Jos isäntäpalvelimen asetukset poikkeavat paikallisesta palvelimesi asetuksista, virhe voi tapahtua. Tämän ongelman ratkaisemiseksi lisää verkkosivuston Web.config-tiedostoon seuraavat elementit:
<appSettings> <add key="enableSimpleMembership" value="true" /> </appSettings>
- Edellinen sivu WebPages luokka
- Seuraava sivu WebPages tietokanta