MemberShip學習之 註冊使用者

2021-09-06 00:06:13 字數 2684 閱讀 5190

vs自帶註冊使用者控制項createuserwizard,這個控制項雖然可以修改,但畢竟是別人的東西,很多地方不符合自己的要求。因此很多時候我們都希望自己來製作漂亮的註冊頁面。

在製作註冊頁面之前,我們需要先配置web.config,也就是配置membership節。web.config的配置情況決定著註冊頁面的製作,比如是否需要註冊密碼提示問題,密碼提示答案,註冊的密碼是否進行加密,註冊使用者是否需要經過審核等。

<

membership defaultprovider="

sqlprovider

"userisonlinetimewindow="

30">

<

providers

>

<

clear

/>

<

add name="

sqlprovider

"type="

system.web.security.sqlmembershipprovider

"connectionstringname="

mysqlconnection"=

""enablepasswordretrieval="

false

"enablepasswordreset="

true

"requiresquestionandanswer="

true

"requiresuniqueemail="

true

"passwordformat="

hashed

"/>

providers

>

membership

>

userisonlinetimewindow:指定使用者在最近一次活動的日期/時間戳之後被視為聯機的分鐘數。比如我設為30分鐘。

connectionstringname---連線字串,根據自己的**進行修改

enablepasswordretrieval-----指示當前成員資格提供程式是否配置為允許使用者檢索其密碼,如果**需要提供密碼找回功能、修改密碼功能等,就需要設定成true;

enablepasswordreset-----指示當前成員資格提供程式是否配置為允許使用者重置其密碼。如果**需要提供密碼修改功能,最好設定成true;

requiresquestionandanswer-----該值指示預設成員資格提供程式是否要求使用者在進行密碼重置和檢索時回答密碼提示問題。同上,如果**需要提供密碼找回功能、使用者審核功能,就需要設定成true;如果不用這些功能,盡是設定成false;

requireuniqueemail-----指示當前成員資格提供程式是否配置為不同使用者的e-mail必須不同。一般設定成false;

passwordformat-----描述儲存成員使用者密碼的加密格式。如果設為clear,則以明文方式儲存,如果設為hashed,則密碼以雜湊碼加密方式儲存。以明文方式儲存,修改密碼方便,但安全度不高。以雜湊碼加密儲存,安全度很高,但修改密碼很費事。

maxinvalidpasswordattempts:獲取鎖定成員資格使用者前允許的無效密碼或無效密碼提示問題答案嘗試次數。預設允許使用者輸錯密碼5次,5次密碼都輸錯後,此使用者將自動鎖定。即islockedout=true;

minrequirednonalphanumericcharacters

獲取有效密碼中必須包含的最少特殊字元數。如果想讓使用者隨意設定密碼,此處最好設定為0

minrequiredpasswordlength 

獲取密碼所要求的最小長度。

配置好web.config之後,就可以開始製作註冊頁面了。

註冊頁面大體可分為四種:

①、只需要註冊使用者和密碼。

②、只需要註冊使用者名稱、密碼和郵箱

③、需要註冊使用者名稱、密碼和郵箱,還需要密碼提示問題和密碼提示答案。以便以後能找回密碼。

④、註冊使用者成功的時候,需要管理員進行審核,而且使用者名稱不能重複。

不管哪一種註冊方式,都是使用的membership.createuser方法,只是引數不同而也。

第一種註冊方法:

membership.createuser(username,password);

第二種註冊方法:

membership.createuser(username,password,email);

第三種和第四種註冊方法:

需要5個引數,分別為使用者名稱、密碼、郵箱、密碼提示問題、密碼提示答案、是否審核、註冊狀態。

如果要讓使用者自己輸入密碼提示問題和密碼提示答案,就做兩個文字框。如果不想讓使用者自己輸入,可以自己確定兩個固定值。

比如:status:註冊狀態。因為註冊成功使用者是寫入aspnet_users和aspnet_membership這兩個表,而這兩個表的主鍵都是userid,而不是username。因此註冊使用者的時候,預設使用者名稱和郵箱是可以重複的。如果我們不想讓使用者註冊相同的使用者名稱和相同的郵箱,就可以通過status來設定。

例:

protected

void

btnreg_click(

object

sender, eventargs e) }

如果不需要審核,也可以重名,則可以使用前面的第一種和第二種註冊方法。這兩註冊方法,需要在web.config裡面將enablepasswordretrieval、requiresquestionandanswer都設定成false;

springCloud學習之服務註冊和發現

leader讓完乙個簡單的springcloud的demo,自己之前聽說過springcloud微服務,但是沒有重視。現在網上查各種資料,但是感覺不怎麼樣啊,還是不會,明天晚上把 給他看,天啦,這個任務對我來說,太難了,但是也要想辦法完成啊。像建立springboot專案一樣,加了個註解 enabl...

新公司註冊流程 2 註冊之

2 註冊之前的準備工作 rel noopener noreferrer 新公司註冊流程 2 註冊之前的準備工作 成都市場調查研究 在決定創辦公司之前應確定幾件事情 1 公司主營業務及可行性分析 這一點是非常非常重要的,因為這決定了你的投資是否有相應的回報,所以一定要理性 細緻 縝密的思考。公司的商業...

springcloud之註冊中心

心跳 續約 提供者定期通過http方式向eureka重新整理自己的狀態 1.搭建eurekaserver 建立專案模板引入eureka 配置yml server port 10086 埠 spring name eureka server 應用名稱,會在eureka中顯示 eureka client...