共用方式為


逐步解說:建立具有成員資格和使用者登入的網站

更新:2007 年 11 月

網站的一般要求的目的在於,只允許某些成員或其他已驗證的使用者可以看到某些網頁。在這種情況下,應用程式必須提示使用者輸入名稱和密碼。應用程式還必須提供對匿名使用者 (尚未登入的使用者) 隱藏資訊的方式。這個逐步解說會示範如何使用 ASP.NET 控制項和 ASP.NET 成員資格服務建立執行所有這些工作的應用程式。如需詳細資訊,請參閱成員資格簡介

逐步解說將說明的工作包括:

  • 將應用程式設定為包含 ASP.NET 成員資格服務,以及如何定義使用者。

  • 使用登入控制項以取得使用者認證並將資訊顯示給登入的使用者。

  • 保護應用程式中的一個或多個網頁,以便只有登入的使用者才可以檢視它們。

  • 您的網站允許註冊新的使用者。

  • 允許成員變更和重設其密碼。

必要條件

若要完成這個逐步解說,您必須要有:

  • Microsoft Visual Web Developer。

  • 在本機電腦上安裝 Microsoft Internet Information Services (IIS)。

  • Microsoft Data Access Components (MDAC) 2.7 (含) 以後版本。如果使用的是 Microsoft Windows XP 或 Windows Server 2003,您就會已經有了 MDAC 2.7。不過,如果您使用的是 Microsoft Windows 2000,可能需要升級電腦中所安裝的 MDAC。如需詳細資訊,請參閱 MSDN Library 中的文件<Microsoft Data Access Components (MDAC) 安裝>。

  • 存取可以轉寄電子郵件訊息的電子郵件伺服器。(伺服器不一定要可以接收訊息)。IIS 包含預設 SMTP 虛擬伺服器,它是適用於這個逐步解說的郵件伺服器。如需設定這個伺服器的詳細資訊,請參閱 HOW TO:在 IIS 6.0 中安裝和設定 SMTP 虛擬伺服器。如果您是在區域網路上運作,請洽詢網路系統管理員以取得存取電子郵件伺服器的相關資訊。

建立網站

如果您已在 Microsoft Visual Studio 中建立了網站,(例如,藉由使用主題逐步解說:在 Visual Web Developer 中建立基本 Web 網頁),則可使用該網站,並跳至這個逐步解說中稍後的「設定成員資格」。否則,依照下列這些步驟建立新的網站和 Web 網頁。

若要建立本機 IIS 網站

  1. 開啟 Visual Studio。

  2. 在 [檔案] 功能表上,按一下 [新網站]。

    [新網站] 對話方塊隨即出現。

  3. 請在 [Visual Studio 安裝的範本] 下方,選取 [ASP.NET 網站]。

  4. 在 [位置] 清單方塊中,選取 [HTTP]。按一下 [瀏覽]。

    [選擇位置] 對話方塊便會出現。

  5. 選取 [本機 IIS]。

  6. 開啟 [本機 Web 伺服器]。

  7. 請選取 [預設的網頁]。

  8. 按一下網站清單上的 [建立新 Web 應用程式] 圖示 (建立新 Web 應用程式按鈕),然後將新網站命名為 membership。

  9. 按一下 [開啟]。

    [選擇位置] 對話方塊便會關閉。

  10. 在 [語言] 方塊中,按一下您想要操作的程式語言。

    您選擇的程式語言將變成網站的預設值,但您可以為每個網頁分別設定程式語言。

  11. 按一下 [新網站] 對話方塊中的 [確定]。

    Visual Web Developer 會建立網站和命名為 Default.aspx 的新網頁。

設定成員資格

稍後在本逐步解說中,您將網頁置於受保護的子目錄中。您必須現在建立子目錄,以便可以在稍後的逐步解說中為其設定安全性。

若要加入新資料夾至網站

  1. 在 [方案總管] 中,以滑鼠右鍵按一下網站名稱,再按 [新增資料夾]。

  2. 將資料夾命名為 MemberPages。

在使用 ASP.NET 成員資格之前,您必須先設定應用程式以啟用成員資格和設定使用者。可以使用網站管理工具,其中提供可用來進行組態設定的類似精靈介面。

在此逐步解說中,您將定義單一使用者。

若要建立成員資格使用者

  1. 在 [網站] 功能表上,按一下 [ASP.NET 組態]。

  2. 選取 [安全性] 索引標籤,按一下 [使用安全性設定精靈,逐步設定安全性] 的連結,然後再按 [下一步]。

  3. 繼續進行精靈的步驟 2,並選取 [從網際網路] 選項。

    精靈會顯示一個頁面,您可以在其中選取網站將要使用的驗證 (Authentication) 方法。這個選項指定您的應用程式將使用表單驗證,進而使用者可以使用稍後在這個逐步解說中建立的登入頁面登入該應用程式。

  4. 按一下 [下一步]。

    精靈會顯示訊息,說明將使用 [進階提供者設定] 儲存使用者資訊。根據預設,成員資格資訊將儲存在網站之 App_Data 資料夾的 Microsoft SQL Server Express 資料庫檔案中。

  5. 按一下 [下一步]。

    精靈會顯示建立角色的選項。稍後您會在逐步解說中分別執行這個步驟。因此,不要選取 [啟用這個網站的角色] 核取方塊。

  6. 按一下 [下一步]。

    精靈會顯示您可以建立新使用者的網頁。

  7. 輸入定義應用程式之使用者的資訊。將下列值用做方針 (您可以使用想要的任何值,但請務必記下這些項目以用於稍後的逐步解說):

    • 使用者名稱:您的名稱 (沒有空格) 或範例名稱。

    • 密碼:密碼。需要強式密碼 (該密碼包括大寫和小寫字母、標點符號,並且至少八個字元長)。

    • 電子郵件:您個人的電子郵件地址。稍後在本逐步解說中,您將傳送給自己電子郵件訊息,因此需要合法的電子郵件地址。

    • 安全性問題 和 安全性解答:輸入稍後需要復原密碼時可以使用的問題和解答。

  8. 按一下 [建立使用者]。

    精靈會顯示確認頁面。

    注意事項:

    保持 [網站管理工具] 為開啟狀態。

在之前的逐步解說中,您已建立名為 [MemberPages] 的資料夾。在這部分的逐步解說中,您將建立一個規則,以確保只有登入的使用者可以存取該資料夾中的網頁。

若要設定 MemberPages 子目錄的存取規則

  1. 在精靈中,按一下 [下一步]。

    精靈會顯示允許您建立存取規則的網頁。

  2. 在 [加入新的存取規則] 方塊中,展開您網站的節點。

  3. 選取您之前建立的資料夾 [MemberPages]。

  4. 在 [規則套用對象] 下方,選取 [匿名使用者]。

  5. 請在 [使用權限] 下方,選取 [拒絕]。

    您建立的規則會拒絕匿名使用者 (也就是說,尚未登入的使用者) 的存取。

  6. 按一下 [加入這個規則]。

    新規則會顯示在下面的方格中。使用者從 [MemberPages] 子目錄要求網頁時,會檢查規則以判斷是否允許使用者存取該網頁。

  7. 按一下 [完成]。

    現在您完成了精靈的使用。精靈會關閉,且您會返回至 [網站管理工具] 的 [安全性] 索引標籤。

設定電子郵件的應用程式

對於這個逐步解說某部分,需要應用程式能夠傳送電子郵件訊息。若要傳送訊息,您的應用程式必須具有對 Simple Mail Transport Protocol (SMTP) 伺服器的存取權限,它會將電子郵件訊息從您的應用程式轉寄給電子郵件收件者。

IIS 包含預設 SMTP 虛擬伺服器做為這個逐步解說所適用的選擇性元件。如需設定這個伺服器的詳細資訊,請參閱 HOW TO:在 IIS 6.0 中安裝和設定 SMTP 虛擬伺服器。如果您是在區域網路上運作,請洽詢網路系統管理員以取得存取電子郵件伺服器的相關資訊。

設定或決定如何存取 SMTP 伺服器後,必須設定應用程式以將電子郵件傳送至該伺服器。您可以將項目置於網站的 Web.config 檔中,該檔案中包含一系列決定應用程式如何執行的設定,以完成這項操作。

若要將應用程式設定為使用特定的 SMTP 伺服器

  1. 在 [網站管理工具] 中,按一下 [應用程式] 索引標籤。

  2. 在 SMTP 設定下,按一下 [設定 SMTP 電子郵件設定]。

    該工具會顯示您可以設定電子郵件的網頁。

  3. 如果您是在電腦上使用 SMTP 虛擬伺服器,則將 localhost 做為 [伺服器名稱] 輸入,否則輸入適當的伺服器名稱。

    根據 SMTP 伺服器的需求,加入通訊埠編號和驗證的資訊。請洽詢您的系統管理員,以取得如何設定這些設定的詳細資訊。

  4. 在 [寄件者] 方塊中,輸入有效的電子郵件地址。

  5. 按一下 [儲存],並在確認頁面中,再按 [確定]。

    網站管理工具會使用原有的設定建立 Web.config 檔 (如果它原先並不存在)。

    注意事項:

    您重新整理檢視後,Web.config 檔才會出現在 [方案總管] 中。

  6. 關閉 [網站管理工具]。

讓使用者登入

做為應用程式的一部分,您需要建立使用者的識別 (Identity),以便應用程式可以依據使用者執行動作 (例如,顯示或隱藏資訊)。若要取得使用者的識別,需要讓使用者登入。

在這個逐步解說中,您將在首頁上加入讓使用者進入登入頁面的連結,然後將建立該登入頁面。

若要建立具有登入按鈕的首頁

  1. 開啟或切換至您網站的 [Default.aspx] 頁面。(如果沒有 Default.aspx 頁面,可以加入新的 Default.aspx 頁面或使用不同頁面)。

  2. 切換至 [設計] 檢視。

  3. 輸入靜態文字 (例如,Welcome to our site),並在 [格式] 工具列中,使用 [區塊格式] 下拉式清單,將文字格式化成「標題 1」。

  4. 從 [工具箱] 的 [登入] 群組中,將 LoginStatus 控制項拖曳至網頁。

根據預設,LoginStatus 控制項會呈現為連結。使用者按一下這個控制項時,應用程式會顯示登入頁面。您現在可以建立登入頁面。

若要建立登入頁面

  1. 在 [方案總管] 中,以滑鼠右鍵按一下 Web 應用程式,並選取 [加入新項目]。將名為 Login.aspx 的 [Web Form] 加入您的網站。

    注意事項:

    在此逐步解說中,網頁必須命名為 Login.aspx。根據預設,表單驗證設定為使用具有此名稱的網頁。儘管您未在這個逐步解說中進行這項操作,您仍可以在 Web.config 檔中變更預設登入頁面 (使用者重新導向至的網頁)。

  2. 在 Login.aspx 網頁中,切換至 [設計] 檢視。

  3. 從 [工具箱] 的 [登入] 群組中,將 Login 控制項拖曳到頁面上。

    Login 控制項是單一控制項,將提示使用者提供認證並會驗證這些認證。

顯示登入錯誤

Login 控制項包含驗證以協助使用者輸入正確的資訊。例如,如果使用者略過密碼,則驗證器控制項會在 [密碼] 方塊旁邊顯示星號 (*)。您可以藉由將 ValidationSummary 控制項加入網頁,提供更完整的登入錯誤資訊。

若要顯示詳細的登入錯誤

  1. 從 [工具箱] 的 [驗證] 群組中,將 ValidationSummary 控制項拖曳至網頁上。

  2. ValidationSummary 控制項的 [屬性] 視窗中,將 ValidationGroup 屬性設為 Login1,它為您先前加入之 Login 控制項的預設 ID。

顯示登入之使用者的資訊

您現在將修改首頁,以根據使用者是否登入自訂顯示畫面。匿名使用者將看到邀請他們登入的泛型訊息。登入的使用者將看到以其登入名稱歡迎他們的訊息。

若要自訂登入之使用者的顯示畫面

  1. 切換至 Default.aspx 頁面或開啟它。

  2. 從 [工具箱] 的 [登入] 群組中,將 LoginView 控制項拖曳到頁面上。

    LoginView 控制項會在其 AnonymousTemplate 範本開啟的情況下顯示。這個範本可讓您定義使用者在其登入之前看到的內容。

  3. 按一下 LoginView 控制項的編輯區域,以啟動編輯。

  4. LoginView 控制項之 AnonymousTemplate 範本的編輯區域中,輸入 You are not logged in. Click the Login link to sign in。

  5. 在 [LoginView 工作] 面板的 [檢視] 清單中,按一下 [LoggedInTemplate]。如果您未看到 [LoginView 工作] 面板,請以滑鼠右鍵按一下 LoginView 控制項的標題,然後選取 [顯示智慧標籤]。

    您現在正在定義將顯示給已登入之使用者的內容。

  6. 按一下 LoginView 控制項的編輯區域以啟動編輯,然後輸入 You are logged in. Welcome。

  7. 從 [工具箱] 的 [登入] 群組中,將 LoginName 控制項拖曳至文字後面的範本中。

測試登入

您現在可以測試應用程式的登入能力。

若要測試登入

  1. 在 [方案總管] 中,以滑鼠右鍵按一下 [Default.aspx],再按 [設定為起始頁]。

    這會設定網站,以便在您執行網站時,會首先出現 Default.aspx 網頁。

  2. 按 CTRL+F5 執行此網站。

    首頁 (Default.aspx) 會出現在瀏覽器中,顯示 [登入] 連結和泛型訊息。

  3. 按一下 [登入] 連結。

    會顯示您建立的登入頁面。

  4. 輸入您之前在逐步解說中建立之使用者的登入名稱,然後按一下 [登入] (先不要輸入密碼)。

    星號 (*) 會顯示在 [密碼] 方塊旁,且錯誤訊息會顯示在 ValidationSummary 控制項中。

  5. 同時輸入使用者名稱和密碼,然後按一下 [登入]。

    如果您輸入正確的認證,則會返回至首頁。該網頁現在會顯示 [登出] 連結、您的使用者名稱和您為登入之使用者定義的歡迎訊息。

  6. 關閉瀏覽器。

限制只供成員使用之網頁的存取

許多網站中的一般工作是設定網頁,以便只有登入的使用者可以檢視網頁。在之前的逐步解說中,您已建立 [MemberPages] 子目錄,並已建立限制對子目錄中網頁之存取的規則。在本節的逐步解說中,您會將網頁加入受保護的子目錄,並測試存取規則。

若要建立只供成員使用的網頁

  1. 在 [方案總管] 中,以滑鼠右鍵按一下 [MemberPages] 資料夾,再按 [加入新項目],然後加入名為 [Members.aspx] 的新 [Web Form]。

    注意事項:

    請確定在 [MemberPages] 資料夾中建立網頁。

  2. 在 [設計] 檢視中,將文字加入網頁,例如 Welcome, members!加入的文字為何並不重要,只要您在瀏覽器中查看此網頁時可以辨識它即可。

您現在可以從首頁加入只供成員使用之網頁的連結。在實際的應用程式中,您可能會將只供成員使用之網頁連結置於 LoginView 控制項之登入的範本中。如此,您網站的造訪者登入後才可以看到該連結。然而,在此逐步解說中,您將讓所有使用者都可以使用該連結,以便您可以查看未首先登入而嘗試檢視只供成員使用之網頁的效果。

若要加入連結至只供成員使用的網頁

  1. 切換至 Default.aspx 頁面或開啟它。

  2. 從 [工具箱] 的 [標準] 群組中,將 HyperLink 控制項拖曳到頁面上。

  3. HyperLink 控制項的 [屬性] 視窗中,將 Text 屬性設為 Members page,並將 href 屬性設為 ~/MemberPages/Members.aspx,以指向您先前建立的網頁。

測試只供成員使用的網頁

您可以藉由同時以匿名使用者和登入的使用者身分存取只供成員使用的網頁,以測試該網頁。

若要測試只供成員使用的網頁

  1. 按 CTRL+F5 執行此網站。

  2. 當 Default.aspx 網頁出現在瀏覽器中時,不要登入。改為按一下 [成員網頁] 連結。

    因為會拒絕匿名使用者對成員網頁的存取,所以會將您重新導向至 Login.aspx 網頁。

  3. 在登入頁面中,輸入您之前在逐步解說中登入所使用的使用者名稱和密碼。

    因為已授權登入時所使用的使用者名稱可以存取該網頁,所以會將您重新導向至 Members.aspx 網頁。

  4. 關閉瀏覽器視窗。

建立新使用者

在逐步解說的第一部分中,您使用網站管理工具建立了使用者。如果您正在使用小型已定義的使用者清單,則該策略會很有用,例如,您正在建立小組的使用者。然而,在許多網站中,允許使用者自己進行註冊。ASP.NET 包含 CreateUserWizard 控制項,該控制項執行的工作與您之前使用網站管理工具所執行的工作相同。

在逐步解說的這個部分中,您將加入允許使用者在網站上註冊的機能。若要啟動,您會建立註冊網頁。

若要建立註冊網頁

  1. 在 [方案總管] 中,以滑鼠右鍵按一下網站的名稱,再按 [加入新項目],然後加入名為 Register.aspx 的新 [Web Form]。

    注意事項:

    請確定在網站的根目錄中,而非在 [MemberPages] 資料夾中建立網頁。

  2. 在 Register.aspx 網頁中,切換至 [設計] 檢視,並將靜態文字 (例如 Register) 輸入該網頁。在 [格式] 工具列中,使用 [區塊格式] 下拉式清單,將文字格式化成標題 1。

  3. 從 [工具箱] 的 [登入] 群組中,將 CreateUserWizard 控制項拖曳到頁面上。

  4. CreateUserWizard 控制項的 [屬性] 視窗中,將 ContinueDestinationPageUrl 屬性設為 ~/Default.aspx。

    這會設定控制項,以便建立使用者後,使用者按一下 [繼續] 時,控制項會返回至首頁。

  5. 從 [工具箱] 的 [標準] 群組中,將 HyperLink 控制項拖曳到頁面上。在 HyperLink 控制項的 [屬性] 視窗中,將 Text 屬性設為首頁,並將 href 屬性設為 ~/Default.aspx。

您現在可以在首頁加入連結,以顯示註冊網頁。在此逐步解說中,假設您只想對未登入的使用者顯示註冊連結。

若要在首頁上建立註冊連結

  1. 切換至 Default.aspx 頁面或開啟它。

  2. 以滑鼠右鍵按一下先前加入的 LoginView 控制項,然後選取 [顯示智慧標籤]。在 [LoginView 工作] 面板中,從 [檢視] 清單方塊選擇 [AnonymousTemplate],以在匿名範本中啟動編輯。

  3. 從 [工具箱] 的 [標準] 群組中,將 HyperLink 控制項拖曳至匿名範本中。在 HyperLink 控制項的 [屬性] 視窗中,將 Text 屬性設為 Register,並將 href 屬性設為 Register.aspx。只會對未登入的使用者顯示 [註冊] 連結。

您現在可以測試註冊過程。

若要測試註冊

  1. 按 CTRL+F5 執行網站並顯示 Default.aspx 網頁。

    由於您未登入,因此會顯示包含 [註冊] 連結的網頁。

  2. 按一下 [註冊] 連結。

    會顯示註冊網頁。

  3. 在文字方塊中輸入新的使用者名稱、強式密碼、電子郵件地址以及安全性問題和解答。(這五項資訊都是必要的)。

  4. 按一下 [建立使用者]。

    會顯示確認訊息。

  5. 按一下 [繼續] 按鈕。

    您會以登入的使用者身分返回至首頁。請注意,[登入] 連結已變更為 [登出],且 Login 控制項中顯示的資訊源自 LoggedInTemplate 屬性,而非 AnonymousTemplate 屬性。

  6. 按一下 [登出] 連結。

    網頁會變更以顯示給匿名使用者的資訊。

  7. 按一下 [登入] 連結。

  8. 輸入您剛剛建立之使用者的認證。

    您以新的使用者身分登入。

  9. 關閉瀏覽器視窗。

變更密碼

有時使用者可能想要變更其密碼,而通常手動執行這項工作並不實際。因此,您可以使用其他 ASP.NET 控制項,讓使用者自己對其密碼進行變更。若要變更密碼,使用者必須知道現有的密碼。

在這個逐步解說中,您將加入登入之使用者可以變更其密碼的網頁。

若要建立密碼變更網頁

  1. 在 [方案總管] 中,以滑鼠右鍵按一下 [MemberPages] 資料夾,再按 [加入新項目],然後加入名為 ChangePassword.aspx 的新 [Web Form]。

    注意事項:

    請確定在 [MemberPages] 資料夾中建立網頁。

    因為只有登入的使用者可以變更其密碼,所以您要將該網頁置於只供成員使用的資料夾中。

  2. 在 ChangePassword.aspx 網頁中,切換至 [設計] 檢視,並輸入靜態文字 (例如,Change Password)。在 [格式] 工具列中,使用 [區塊格式] 下拉式清單,將文字格式化成標題 1。

  3. 從 [工具箱] 的 [登入] 群組中,將 ChangePassword 控制項拖曳到頁面上。

  4. ChangePassword 控制項的 [屬性] 視窗中,將 ContinueDestinationPageUrl 屬性設為 ~/Default.aspx。

  5. 這會設定控制項,以便變更密碼後,使用者按一下 [繼續] 時,控制項會返回至首頁。

您現在可以在首頁加入連結,以顯示密碼變更網頁。您只讓登入的使用者使用該連結。

若要在首頁上建立密碼變更連結

  1. 切換至 Default.aspx 頁面或開啟它。

  2. 以滑鼠右鍵按一下 LoginView 控制項,再按一下 [顯示智慧標籤]。在 [LoginView 工作] 功能表上的 [檢視] 清單中,按一下 [LoggedInTemplate]。

    這會為顯示給登入之使用者的內容將 LoginView 控制項切換至編輯模式。

  3. 從 [工具箱] 的 [標準] 群組中,將 HyperLink 控制項拖曳至編輯區域中。在 HyperLink 控制項的 [屬性] 視窗中,將 Text 屬性設為 Change Password,並將 href 屬性設為 ~/MemberPages/ChangePassword.aspx。

    [變更密碼] 連結只會顯示給登入的使用者,這與您之前建立的 [註冊] 連結正好相反。

您現在可以測試密碼變更過程。

若要測試密碼變更

  1. 按 CTRL+F5 執行此網站。

  2. 在 Default.aspx 網頁中,按一下 [登入] 連結,並以您建立的其中一個使用者身分登入。

    完成後,您會以登入的使用者身分返回至首頁。

  3. 按一下 [變更密碼] 連結。

  4. 在密碼變更網頁中,輸入舊密碼和新密碼,然後按一下 [變更密碼]。

  5. 按一下 [繼續]。

  6. 在首頁上,按一下 [登出]。

  7. 按一下 [登入] 連結。

  8. 輸入新密碼。

    使用新密碼登入。

  9. 關閉瀏覽器視窗。

復原密碼

使用者偶爾會忘記其密碼。您可以將密碼復原網頁加入網站,以便讓忘記密碼的使用者可以再次登入網站。密碼復原需要兩個表單:

  • 您可以傳送給使用者他們所選的密碼 (或您設定網站時為他們建立的密碼)。這個選項需要網站使用可復原的加密 (Encryption) 儲存密碼。

  • 您可以傳送給使用者新密碼,他們可以使用您之前建立的變更密碼網頁變更新密碼。如果網站使用不可復原的加密配置 (例如,雜湊) 儲存密碼,則此選項會很有用。

注意事項:

不建議需要高層級安全性的網站使用電子郵件以純文字方式傳回密碼。對於高度安全性的網站,建議您使用加密 (例如,Secure Sockets Layer (SSL)) 傳回密碼。

根據預設,ASP.NET 成員資格系統會藉由雜湊密碼來保護它們,也就是說無法恢復密碼。因此,對於逐步解說的這個部分,網站會傳送給使用者新密碼。

注意事項:

密碼復原需要網站可以傳送電子郵件訊息。如果您無法設定網站傳送電子郵件 (如這個逐步解說中之前的「設定電子郵件的應用程式」所述),則無法將密碼復原加入網站。

若要加入密碼復原

  1. 在 [方案總管] 中,以滑鼠右鍵按一下網站的名稱,再按 [加入新項目],然後加入名為 RecoverPassword.aspx 的新 [Web Form]。

    注意事項:

    請確定在網站的根目錄中,而非在 [MemberPages] 資料夾中建立網頁。

  2. 在 RecoverPassword.aspx 網頁中,切換至 [設計] 檢視,並輸入靜態文字 (例如,Reset my password to a new value)。在 [格式] 工具列中,使用 [區塊格式] 下拉式清單,將文字格式化成標題 1。

  3. 從 [工具箱] 的 [登入] 群組中,將 PasswordRecovery 控制項拖曳到頁面上。

  4. 從 [工具箱] 的 [標準] 群組中,將 HyperLink 控制項拖曳到頁面上。在 HyperLink 控制項的 [屬性] 視窗中,將 Text 屬性設為首頁,並將 href 屬性設為 ~/Default.aspx。

  5. 切換至 Default.aspx 網頁。

  6. 以滑鼠右鍵按一下 LoginView 控制項,再按一下 [顯示智慧標籤]。在 [LoginView 工作] 功能表上的 [檢視] 清單中,按一下 [AnonymousTemplate]。

    這會為顯示給未登入之使用者的內容將 LoginView 控制項切換至編輯模式。

  7. 從 [工具箱] 的 [標準] 群組中,將 HyperLink 控制項拖曳至範本中。在 HyperLink 控制項的 [屬性] 視窗中,將 Text 屬性設為 Forgot your password?,並將 href 屬性設為 ~/RecoverPassword.aspx。

現在您可以測試密碼復原。

若要測試密碼復原

  1. 按 CTRL+F5 執行此網站。

  2. 根據預設,您尚未登入,因此您會看到 LoginView 控制項的匿名範本。

  3. 按一下 [忘記密碼?] 連結。

    RecoverPassword.aspx 網頁隨即出現。

  4. 輸入您的使用者名稱並按一下 [送出]。

    安全性問題會顯示,並提示您輸入安全性解答。

  5. 輸入解答並按一下 [送出]。

    如果您輸入正確的解答,則網站會重設您的密碼並傳送給您含有新密碼的電子郵件訊息。

後續步驟

這個逐步解說說明了簡單但完整的案例,用於建立提示使用者需要認證、顯示資訊給登入的使用者、允許使用者復原忘記的密碼,並且限制對網頁的存取權限的應用程式。您可以使用逐步解說中說明的技術和控制項建立更加複雜的網頁和應用程式。例如,您可能要:

請參閱

概念

成員資格簡介