【Dflying Chen】在ASP.NET Atlas中結合Membership進行身份驗證
ASP.NET Atlas可以使用ASP.NET中的Membership來進行使用者身份驗證,並在驗證成功後自動設定相應的Cookie。Atlas中的身份驗證是通過Sys.Services._AuthenticationService類的一個例項:Sys.Services.AuthenticationService來進行的,在Atlas應用程式中,您可以通過這個全域性的Sys.Services.AuthenticationService物件來進新身份驗證。
Sys.Services.AuthenticationService物件有如下幾個方法:
- validateUser():該方法接受使用者名稱,密碼兩個引數,並將返回一個布林值代表使用者驗證(注意,僅僅為驗證,不是登入,該方法將不會設定Cookie。)是否成功。該方法將使用ASP.NET中設定的預設的membership provider來進行使用者的驗證。
- login():這個方法與validateUser()方法類似,但在其基礎上該方法會設定代表登入成功的Cookie,當然需要在提供的使用者名稱/密碼正確的情況下。通過呼叫這個方法,您可以實現AJAX方式的使用者登入。
- logout():登出當前使用者。
下面我們通過一個例子來演示一下使用Sys.Services.AuthenticationService物件進行使用者身份驗證。
首先,在您的web.config檔案中啟用相應的驗證服務:
<sectionGroup name="microsoft.web" type="Microsoft.Web.Configuration.MicrosoftWebSectionGroup">
<section name="converters" type="Microsoft.Web.Configuration.ConvertersSection" requirePermission="false"/>
<section name="webServices" type="Microsoft.Web.Configuration.WebServicesSection" requirePermission="false"/>
<section name="authenticationService" type="Microsoft.Web.Configuration.AuthenticationServiceSection" requirePermission="false"/>
<section name="profileService" type="Microsoft.Web.Configuration.ProfileServiceSection" requirePermission="false"/>
sectionGroup>
configSections>
還有:
<webServices enableBrowserAccess="true"/>
<!--
Uncomment this line to enable the authentication service.-->
<authenticationService enabled="true" />
microsoft.web>
然後我們在Membership資料庫中新增幾個測試的使用者,您可以通過ASP.NET Web Site Administration Tool來設定並新增使用者。
現在我們建立一個簡單的登入頁面,與所有的登入頁面類似,兩個input(使用者名稱/密碼)一個按鈕(登入)。我們又加入了一個label來顯示使用者登入資訊。程式碼如下:
User Name:<input type="text" id="username" /><br />
Password:<input type="password" id="password" /><br />
<input id="loginlogout" type="button" onclick="OnSubmitLogin()" value="Click me to login!" /><br />
當然,最重要的ScriptManager是不能缺少的:
下面,我們來書寫登入按鈕按下時候的事件處理函式,也就是登入的處理。首先,利用Atlas的$()方法在DOM中找到上述幾個HTML控制元件:
var password = $('password');
var status = $('status');
var buttonLoginLogout = $('loginlogout');
下面是使用者登入時的處理,注意到我們只是簡單的呼叫了Sys.Services.AuthenticationService.login()方法,並在返回以後相應改變狀態label的文字:
Sys.Services.AuthenticationService.login(username.value, password.value, false, OnLoginComplete);
return false;
}
function OnLoginComplete(result) {
password.value = '';
//On success there will be a forms authentication cookie in the browser.
if (result) {
username.value = '';
status.innerHTML = "logged in";
buttonLoginLogout.innerText = "Click me to logout!";
buttonLoginLogout.onclick = OnSubmitLogout;
}
else {
status.innerHTML = "User name/Password not match!";
}
}
下面是使用者登出時的處理,通過呼叫Sys.Services.AuthenticationService.logout()方法來實現:
//This call will cause the server to clear the forms authentication cookie.
Sys.Services.AuthenticationService.logout(OnLogoutComplete);
return false;
}
function OnLogoutComplete(result) {
buttonLoginLogout.innerText = "Click me to login!";
status.innerHTML = "logged out";
buttonLoginLogout.onclick = OnSubmitLogin;
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-343351/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【Dflying Chen 】使用ASP.NET Atlas編寫顯示真實進度的ProgressBar(進度條)控制元件ASP.NET控制元件
- 在Linux Shell程式中進行身份驗證(轉)Linux
- 【Dflying Chen 】在ASP.NET AJAX中應用程式:使用者個性化元件ProfileServiceASP.NET元件
- ASP.NET MVC結合jQuery外掛進行資料驗證ASP.NETMVCjQuery
- 在Linux Shell程式中進行身份驗證[修訂版] (轉)Linux
- 也談Asp.net 中的身份驗證ASP.NET
- Asp.Net MVC 身份驗證-FormsASP.NETMVCORM
- ASP.Net WebService 身份驗證 FormsASP.NETWebORM
- 【Dflying Chen 】.NET Framework原始碼釋出Framework原始碼
- 使用 OAuth 2.0 進行 Kafka 身份驗證 - strimziOAuthKafka
- Part 3: OAuth2進行身份驗證OAuth
- WebService通過SOAP頭進行身份驗證Web
- 在Windows和UNIX下利用PHP和LDAP進行身份驗證(轉)WindowsPHPLDA
- asp.net 角色身份驗證的使用ASP.NET
- 在Keycloak中實現多租戶並在ASP.NET Core下進行驗證ASP.NET
- Kerberos 身份驗證在 ChunJun 中的落地實踐ROS
- win10 的windows身份驗證怎麼開啟_win10怎麼進行身份驗證Win10Windows
- 直播app原始碼,進行身份驗證時,檢測身份證位數夠不夠APP原始碼
- 作業系統身份驗證和口令檔案身份驗證總結作業系統
- 在實際使用智慧合約中需要預言機對資料進行驗證
- GitHub 現在支援安全金鑰和生物識別選項進行身份驗證Github
- ASP.NET MVC 5改進了基於過濾器的身份驗證ASP.NETMVC過濾器
- javascript 驗證身份證JavaScript
- 1.6.5.1. 準備使用密碼檔案進行身份驗證密碼
- 使用JAVA進行ad域身份驗證常用屬性詳解Java
- WEB身份驗證Web
- gRPC(七)進階:自定義身份驗證RPC
- 身份證驗證工具類
- 【asp.net core 系列】13 Identity 身份驗證入門ASP.NETIDE
- Asp.Net WEBAPI 增加身份驗證 (OAUTH 2.0方式)ASP.NETWebAPIOAuth
- 實時驗證碼技術可改進生物識別身份驗證
- MVC學習筆記之:ASP.NET MVC的客戶端驗證-jQuery.validate驗證結合Model驗證中的實現MVC筆記ASP.NET客戶端jQuery
- Oracle的身份驗證Oracle
- 零知識證明在隱私保護和身份驗證中的應用
- PHP 驗證身份證號碼PHP
- 中國身份證號驗證庫
- C++身份證號驗證C++
- C#驗證身份證號C#