顯示具有 會員登入 標籤的文章。 顯示所有文章
顯示具有 會員登入 標籤的文章。 顯示所有文章

2025年11月7日 星期五

[ASP.NET MVC] 會員註冊與登入 - 透過E-Mail確認身分 E-Mail Confirm

影片連結
https://youtu.be/oiyTqbUNUCc

[ASP .NET MVC 五小時]從零開始,無Youtube廣告 免費試聽 https://youtu.be/6nC9spSkwzw 學員感言與推薦 - https://mis2000lab.medium.com/%E5%AD%B8%E5%93%A1%E5%8F%A3%E7%A2%91%E8%88%87%E6%8E%A8%E8%96%A6-mis2000lab-%E7%B7%9A%E4%B8%8A%E8%AA%B2%E7%A8%8B-asp-net-mvc-webapi-%E6%95%99%E5%AD%B8%E8%A6%96%E9%A0%BB-869112e651a2 學員感言與推薦 - www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023 直接來信跟我購買 : 1. 價格最便宜(因為沒有別人抽成) 2. 內容最多、更新最快(外面平台只能賣得動 入門課、進階的沒人買) 3. 一年內,MVC新增內容,第一時間通知您 "免費"觀賞 完整課程 超過 140小時(外面買不到) 已開始販售,請來信詢問,保證最低價(直接跟我買,限時優惠六折!) mis2000lab (at) yahoo.com.tw; school (at) mis2000lab.net。謝謝您 [ASP .NET Core 6.0~8.0/9.0 MVC]第一天 免費課程 3小時完整試聽 https://youtu.be/TSmwpT-Bx4I 。 [ASP .NET MVC 5 / .NET 4.x版] 第一天完整影片(5.5小時)免費試聽 https://youtu.be/9spaHik87-A 。 課程大綱,請看 www.dotblogs.com.tw/mis2000lab/2018/08/14/ASPnet_MVC_Online_Learning_MIS2000Lab 課程大綱 mis2000lab.pixnet.net/blog/post/35141956 課程上架 - 9vs1 .com 網站的 ASP .NET 8.0 / 9.0 MVC 三天入門課程 www.9vs1.com/go/?i=57ktp8xdj5ph 這位學員學了半年,公司幫他加薪150%(真人真事) - www.dotblogs.com.tw/mis2000lab/2020/09/23/ASPnet_MVC_online_20200923 初學者第一天的MVC入門課程。一般的網站(購物商城、新聞媒體)有哪些必備功能,我們學習MVC也能做到嗎?MVC又是什麼?能否讓我一個範例就懂?

2025年6月8日 星期日

[ASP.NET MVC]會員登入- 第三方google帳號登入(1) 使用OAuth 2.0 存取Google API | Authoriza...

Youtube影片網址  https://youtu.be/RW0y3bV5rwQ
Youtube影片網址  https://youtu.be/RW0y3bV5rwQ

[ASP.NET MVC + OAuth 2.0 ]會員登入- 以第三方 google帳號 登入(1) 使用OAuth 2.0 存取Google API | Authorization -- 這門課程預計2025年七月公布,目前正在錄製中......謝謝您 學員感言與推薦 - www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023 直接來信跟我購買 : 1. 價格最便宜(因為沒有別人抽成) 2. 內容最多、更新最快(外面平台只能賣得動 入門課、進階的沒人買) 3. 一年內,MVC新增內容,第一時間通知您 "免費"觀賞 完整課程 超過 140小時(外面買不到) 已開始販售,請來信詢問,保證最低價(直接跟我買,限時優惠六折!) mis2000lab (at) yahoo.com.tw; school (at) mis2000lab.net。謝謝您 [ASP .NET Core 6.0~8.0/9.0 MVC]第一天 免費 3小時 https://youtu.be/TSmwpT-Bx4I 。 [ASP.NET MVC 5 / .NET 4.x版] 第一天 免費(5.5小時)完整試聽 https://youtu.be/9spaHik87-A 。 課程大綱,請看 https://www.dotblogs.com.tw/mis2000lab/2018/08/14/ASPnet_MVC_Online_Learning_MIS2000Lab 課程上架 - 9vs1 .com 網站的 ASP .NET 8.0 / 9.0 MVC 三天入門課程 www.9vs1.com/go/?i=57ktp8xdj5ph 課程大綱 詳見 mis2000lab.pixnet.net/blog/post/35141956 。這位學員學了半年,公司幫他加薪150%(真人真事) - www.dotblogs.com.tw/mis2000lab/2020/09/23/ASPnet_MVC_online_20200923 初學者第一天的MVC入門課程。一般的網站(購物商城、新聞媒體)有哪些必備功能,我們學習MVC也能做到嗎?MVC又是什麼?能否讓我一個範例就懂?

2020年2月4日 星期二

[會員登入] 不使用ASP.NET Core Identity 的 Cookie 驗證 (ClaimsIdentity)

ASP.NET Core 3.1與 2.x 搭配 System.Security.Claims 命名空間的 ClaimsIdentity來做

輕鬆簡單,很快就能上手。Forms Authentication with cookie


使用沒有 ASP.NET Core 身分識別的 cookie 驗證(不使用ASP.NET Core Identity的 cookie 驗證)


ASP.NET Core 3.1與 2.x ,搭配 System.Security.Claims 命名空間 的 ClaimsIdentity來做

我建議先閱讀這一篇文章,簡短有力,淺顯易懂。完成以後,再來看微軟官方說明。

(2018/8/2)  Forms Authentication in .NET Core (AKA Cookie Authentication)
http://www.nogginbox.co.uk/blog/forms-authentication-in-net-core-aka-cookie-authentication

或是參考我錄好的教學影片 - https://youtu.be/eRa-hdsDfB4

微軟的文件(中文) .NET Core 2.1與 3.1差異不大。

但 3.1版的範例採用 Razor Page來示範。
https://github.com/aspnet/AspNetCore.Docs/tree/master/aspnetcore/security/authentication/cookie/samples/3.x/CookieSample

每一個檢視畫面(網頁)跟以前WebForm(.aspx)一樣,分成兩個檔案(.cshtml 與 .cshtml.cs)。

我覺得比較不好懂。所以建議參閱 .NET Core 2.1的範例。
https://github.com/aspnet/AspNetCore.Docs/tree/master/aspnetcore/security/authentication/cookie/samples/2.x/CookieSample

** 步驟如下 **

第一,打開一個 ASP.NET Core 的 MVC專案

第二,透過 Nuget安裝「Microsoft.AspNetCore.Authentication.Cookies


第三,Startup.cs裡面有些設定:
請參閱  https://github.com/aspnet/AspNetCore.Docs/blob/master/aspnetcore/security/authentication/cookie/samples/3.x/CookieSample/Startup.cs

(3-1) ConfigureServices這個區域,請加入這兩段
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
           .AddCookie();

         

(3-2) Configure這個區域,請加入這兩段
            app.UseAuthentication();   // 這一句話需要手動加入,後面幾句是原本就有的
            app.UseAuthorization();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
                // endpoints.MapRazorPages();   // 如果您不使用 RazorPage來做,這一句可以註解掉、不用
            });




第四,HomeController控制器,您需要加入這些命名空間

using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authentication.Cookies;
using System.Security.Claims;    // Claims會用到
using Microsoft.AspNetCore.Authorization;  


(4-1) Login登入,輸入帳號、密碼。
        public IActionResult Login()
        {
            return View();
        }

        [HttpPost]
        [ValidateAntiForgeryToken] 
        public ActionResult Login(db_user _User)
        {
            if (ModelState.IsValid)
            {   // 入門版,先不連結DB,固定帳號密碼來做(微軟範例也是這樣)
                //
線上課程 裡會有連結資料庫,比對帳號與密碼的教材。  初學者不要急,一步一步學習。
                if (_User.UserName != "123" && _User.UserPassword != "123")
                {
                    ViewData["ErrorMessage"] = "帳號與密碼有錯";
                    return View();
                }
                #region ***** 不使用ASP.NET Core Identity的 cookie 驗證 *****
                var claims = new List   // 搭配 System.Security.Claims; 命名空間
                {
                    new Claim(ClaimTypes.Name, _User.UserName),
                    // new Claim(ClaimTypes.Role, "Administrator"),
                    // 如果要有「群組、角色、權限」,可以加入這一段

                };

                // 底下的 ** 登入 Login ** 需要下面兩個參數 (1) claimsIdentity  (2) authProperties
                var claimsIdentity = new ClaimsIdentity(
                                           claims, CookieAuthenticationDefaults.AuthenticationScheme);
                var authProperties = new AuthenticationProperties
                {
                    //AllowRefresh = ,
                    // Refreshing the authentication session should be allowed.

                    //ExpiresUtc = DateTimeOffset.UtcNow.AddMinutes(10), 
                    // The time at which the authentication ticket expires. A
                    // value set here overrides the ExpireTimeSpan option of
                    // CookieAuthenticationOptions set with AddCookie.

                    //IsPersistent = true,
                    // Whether the authentication session is persisted across
                    // multiple requests. When used with cookies, controls
                    // whether the cookie's lifetime is absolute (matching the
                    // lifetime of the authentication ticket) or session-based.

                    //IssuedUtc = ,
                    // The time at which the authentication ticket was issued.

                    //RedirectUri =
                    // The full path or absolute URI to be used as an http redirect response value.

                };
                // *** 登入 Login *********
                HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme,
                                                        new ClaimsPrincipal(claimsIdentity),
                                                        authProperties);
                #endregion
                return Content("

恭喜您,登入成功

");
            }
            // Something failed. Redisplay the form.
            return View();
        }

(4-2) LogOut 登出。微軟範例以非同步(異步)的寫法來做 -- Async. Await
可以參閱這一則影片  https://youtu.be/8vcrjhaF1zE   ( [ASP.NET].NET 4.5 非同步程式,從一張圖知道原來如此 (async & await) )
        public async Task Logout()
        {
            // 自己宣告 Microsoft.AspNetCore.Authentication.Cookies; 命名空間
            await HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme);
            return View();  // 回 首頁。 return RedirectToAction("Index", "Home");
        }


** 範例下載 **

    我整理了一份 "PDF檔" 當作說明,也分享了這個範例

    專案名為 WebApplication2019_MVC_Core_LoginCookie

    這個範例為了搭配我的MVC課程,所以經過修改。
    已經購買 ASP.NET MVC 5線上教學的朋友,可以發現跟原本範例的差異不大
    主要是上述(第四部分)的修改而已。

請由此下載  https://onedrive.live.com/?id=6F7F668080F24B20%212586&cid=6F7F668080F24B20

***************************************************

[學員感言] mis2000lab課程評價 - ASP.NET MVC , WebForm

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023

[ASP.NET Core MVC]第一天 免費課程 3小時完整試聽

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/AspNetCore_MVC_First_Day_Free_20230130

從最早的 75小時MVC課程,目前已經延伸到 115小時,也包含了 .NET Core

.NET Core 6 MVC線上教學 - MIS2000Lab 課程大綱 與 試聽

https://dotblogs.com.tw/mis2000lab/2021/07/18/NET_MVC_Online_Free_Learning_mis2000lab 

購買完整MVC課程(一百小時),限時六折優惠並免費加贈兩萬元「.NET Core升級課程」,請直接來信洽詢

(太便宜!太划算,不能公開) mis2000lab (at) yahoo.com.tw ; school (at) mis2000lab.net


2019年8月26日 星期一

ASP.NET MVC - Login 會員登入與權限控管

課程介紹    https://9vs1.com/go/?i=3580aaf8f818

ASP NET MVC Login Authorization MIS2000Lab 1

任何商業系統都需要「會員登入與權限控管」的機制,因此不少初學者,或坊間教學只會用微軟提供的現成工具或套件,如 ASP.NET Identity 去作會員登入與權限管理,但在這套工具還沒出現以前,市面上這麼多網站的「會員登入」的機制又是打哪來的呢?如果不用現成套件又要如何去做呢?

本課程將教你多種會員登入的機制,不只是 ASP.NET Web Form 與 MVC 兩者都可共用,有很多方法甚至可以沿用到 PHP 、 JSP 等其他網頁程式上,學會網頁程式共用的技巧,這樣的學習才是聰明的投資,不會被綁在某一套程式語法上面,將來在面試、應徵工作時,也越能凸顯自己的能力。

ASP NET MVC Login Authorization MIS2000Lab title2
ASP NET MVC Login Authorization MIS2000Lab 2

除了會員登入與管理,本課程也提供幾種網路攻擊與資訊安全的防範之道。例如:資料隱碼攻擊(SQL Injection)、跨網站腳本攻擊(XSS)、跨網站冒名請求(CSRF)。當你知道別人怎麼攻擊,才能尋求解法,知道如何防範,真正做到「知己知彼,百戰百勝」。

課程中還會分享DLL類別庫專案的作法,把共用的程式抽離出來。

FormsAuthentication 與MVC的 [Authorize] 互相搭配,也可做到會員登入與控管的功能,不管是WebForm或是MVC都可以使用這方法。

最後更提供兩個實用的範例:
第一,以雜湊運算「單向」的打亂機密資訊。
第二,會員註冊以後,需要透過E-Mail再次確認身份,避免幽靈帳號大量註冊。

課程網址    https://9vs1.com/go/?i=3580aaf8f818

ASP NET MVC Login Authorization MIS2000Lab title3
ASP NET MVC Login Authorization MIS2000Lab 3

本課程的教法是循序漸進、由淺入深,每一節的進度都比上一節微幅增加,讓學員學習起來不會覺得壓力太大或是跟不上,還有持續進步的感覺。

主要教學方針則以「實務」與「範例解說」作為目標,不只可以透過大量的實作練習,直接以實戰練功,老師更會親自為學員示範常見的範例,與論壇上經常被人問到的功能。其中的範例與技巧,也都能同時用在 ASP.NET Web Form 與 MVC 上面,一魚兩吃,絕對超值!


ASP NET MVC Login Authorization MIS2000Lab title4

1.會員登入與權限控管

    很多初學者以為 ASP.NET MVC 「只能」透過 ASP.NET Identity 這種現成的工具與套件才能作會員登入與權限控管的機制。但事實上,有很多方法都可以做到,而且更簡單易懂。

2. 設計會員登入的資料表

    任何網頁程式與Web Server都支援「狀態管理」的特性。 學會這一招,不管是PHP、JSP、傳統ASP(Classic ASP)或是ASP.NET(WebForm與MVC)都可以使用。
    本課程將會解說:會員登入與管理會用到資料表的哪些欄位。讓您自己設計資料表,再來寫程式。從頭到尾都可以一手包辦。

3. 基本練習 -- 比對帳號與密碼& 狀態管理 (所有網頁程式都有的特性)

    學會上一節的觀念後,暫時"不"連結資料庫(DB First),帳號與密碼都固定123,這只是一個簡單的練習(後續才會有資料庫的範例,請慢慢來)。
    這個範例主要講解狀態管理(Session)的用法,如何應用在會員登入與權限控管上。簡單易懂,一聽就會。

4.綜合練習—撰寫DLL類別庫,將共用程式抽離出來

    改寫上一節的範例,把共用的程式抽離出來,另外寫在DLL類別庫的專案中。

5.觀念與解說
    前面的範例,檢查會員登入的機制,要寫在哪裡比較合適? 為什麼不再寫於/App_Code目錄底下?改用DLL檔的類別庫專案來做?

6. 綜合練習 -- 連結資料庫 + 狀態管理(Session)。 每個人的帳號與密碼都要進資料庫比對。

    結合前面兩節的成果,現在您可以做出一個完整的範例,以「範例」為主的教學,加上「逐步延伸」與「經驗累積」。
    這樣的會員登入範例,不管是PHP、JSP、傳統ASP(Classic ASP)或是ASP.NET(WebForm與MVC)都可以使用 。

7.資訊安全—常見的網路攻擊與 防範之道

    完成上面的練習之後,本節將會解釋幾種網路攻擊的模式與防範的方法,包含資料隱碼攻擊(SQL Injection)、跨網站腳本攻擊(XSS)、跨網站冒名請求(CSRF)。知道別人怎麼攻擊,才能尋求防範之道。

8.綜合練習—連結資料庫 + 狀態管理(Cookie)

    改寫前面的範例,經過微調就能做到。每一節的進度都比上一節微幅增加,讓學員學習起來不會感到太大的壓力。
    這樣的會員登入範例,不管是PHP、JSP、傳統ASP(Classic ASP)或是ASP.NET(WebForm與MVC)都可以使用 。

9. 基本練習 -- FormsAuthentication與[Authorize]

    FormsAuthentication 的範例與程式碼較長,我們先做一個 入門的,簡短的 版本,學會以後,再繼續深入下去。

10.綜合練習— FormsAuthentication與 [Authorize]

    本範例可以同時用在ASP.NET(WebForm與MVC)上面 ,學會一次終身受用!需要搭配Global.asax與Web.Config設定檔,一樣可以搭配MVC控制器,在動作上方的 [Authorize] 作法。

11.綜合練習—透過雜湊運算,打亂機密資料

    以單向的方式行雜湊運算(如MD5或SHA1)將會員的機密資料打亂,搭配會員登入的密碼檢驗。本課程以「務實」與「範例解說」兩大目標為主,提供您常見的範例與論壇上經常被人問到的功能,為您親自示範,本範例ASP.NET(WebForm與MVC)皆可使用。

12.綜合練習—註冊成功後,透過E-Mail再次確認身份

    會員第一次註冊以後,通常會透過E-Mail再次確認此人身份,避免幽靈帳號的入侵。該怎麼做到呢?本課程以「務實」與「範例解說」兩大目標為主,提供您常見的範例與論壇上經常被人問到的功能,為您親自示範,本範例ASP.NET(WebForm與MVC)皆可使用。

ASP NET MVC Login Authorization MIS2000Lab title5
  • 以實作優先:減少理論說明,大量練習範例,講求從做中學。
  • 錯誤學習法:透過錯誤的範例從中學習,並找出自己的盲點。

ASP NET MVC Login Authorization MIS2000Lab title6
ASP NET MVC Login Authorization MIS2000Lab 4
ASP NET MVC Login Authorization MIS2000Lab title7
  1. 會員登入與權限控管
  2. 設計會員登入的資料表 & 狀態管理
  3. 連結資料庫
  4. 綜合練習—撰寫DLL類別庫,將共用程式抽離出來
  5. 觀念與解說
  6. 綜合練習—連結資料庫 + 狀態管理(Session)
  7. 資訊安全—常見的網路攻擊與防範之道
  8. 綜合練習—連結資料庫 + 狀態管理(Cookie)
  9. 綜合練習— FormsAuthentication與 [Authorize](簡易版 + 進階版)
  10. 綜合練習—透過雜湊運算,打亂機密資料
  11. 綜合練習—註冊成功後,透過E-Mail再次確認身份

    完整課程介紹   https://9vs1.com/go/?i=3580aaf8f818

學員上課後會學到什麼或能做什麼

  • 透過網頁程式都有的「狀態管理」的Session與Cookie做出「會員登入與權限控管」的機制。
  • 學會DLL類別庫專案的作法,把共用的程式抽離出來。
  • 幾種網路攻擊與防範之道,例如:資料隱碼攻擊(SQL Injection)、跨網站腳本攻擊(XSS)、跨網站冒名請求(CSRF)。
  • 透過雜湊運算將機密資訊打亂。
  • 會員註冊以後,透過E-Mail在測確認身份,避免由幽靈帳號大量註冊。

學員上課前需具備哪些軟、硬體設備或常識

  • 基礎的 OOP(物件導向)程式設計能力,如:類別(class)。建議已完成「ASP.NET MVC 教學 - 由零開始的入門課」的學習。
  • 知道資料庫(DataBase)與簡單的 T-SQL 指令,如:CRUD。 課程所需軟體皆可免費下載。
  • Visual Studio 2015~2019或後續新版,請下載社群版(Community版)。
  • 建議使用 Windows 作業系統。因為 Visual Studio Code 與 Visual Studio for Mac 與教學畫面仍有差異。
  • SQL Server Express 版(免費)。建議使用 SQL Server 2012(Express版)或後續新版。

課程適合對象  

  • 本課程屬於進階課程,建議完成「ASP.NET MVC 教學 - 由零開始的入門課」課程後再來學習。
  • 需要撰寫網頁系統、或對於網頁與資料庫的開發有興趣的朋友。
  • 未來的程式設計師 -- 希望將來進入業界寫程式,開發網頁系統。
  • 曾寫過 ASP、ASP.NET(Web Form)、PHP、JSP 的朋友,現在想學習 ASP.NET MVC 5。

課程介紹    https://9vs1.com/go/?i=3580aaf8f818


2019年8月16日 星期五

[ASP.NET MVC] FormsAuthentication 簡易入門





[ASP.NET MVC] FormsAuthentication 簡易入門

https://youtu.be/0nFlssh60Pw



簡單的會員登入,ASP.NET MVC + WebForm都能使用。

ASP.NET MVC線上影片、遠距教學。請看 dotblogs.com.tw/mis2000lab/2018/08/14/aspnet_mvc_online_learning_mis2000lab 或是
mis2000lab.pixnet.net/blog/post/35141956



2017年9月18日 星期一

會員登入 與 FormsAuthentication (Web.Config裡面的 authentication mode="Forms")

會員登入 與 FormsAuthentication (Web.Config裡面的 )

用 Web.Config 鎖死後台管理區 需要權限的檔案,必須通過帳號、密碼才能登入(看得見)
本範例源自微軟MSDN的範例(予以簡化)


這是一個很老的方法(從.NET 2.0就有了)
topcat寫的最詳細,學習ASP.NET 2.0會員機制三部曲 www.dotblogs.com.tw/topcat/archive/2009/08/03/9821.aspx

我比較單刀直入,一個可用的範例PO出來就會做了
先看執行畫面:
      

      


您要改的地方,就是下面這幾個重點。檔案 Session_Login.aspx
有心研究的朋友,微軟MSDN網站查一下,都有!
   protected void Button1_Click(object sender, EventArgs e)
    {
        if (TextBox1.Text == "123" && TextBox2.Text == "123")
        {    //基本上,底下這段幾乎是照抄!就能運作!       
            String groups = "Admin";   //群組(角色)。可以自己寫字串,也可以從資料庫裡面抓取您設定的數值。
            //Create the ticket, and add the groups.登入成功後,是否用Cookie記錄?
            bool isCookiePersistent = CheckBox1.Checked;
            //輸入參數: 使用 Cookie 名稱、版本、目錄路徑、核發日期、到期日期、永續性和使用者定義的資料
            // 此 Cookie 路徑設定為在Web.Config組態檔中建立的預設值,也就是  path="/"。
            FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(1, TextBox1.TextDateTime.Now, DateTime.Now.AddMinutes(60), isCookiePersistent, groups);   
            //-- 每個參數的用意 ---------------------------------------------------------------------------------------------
            //--  version  類型:System.Int32  票證(ticket)的版本號碼。
            //--  name  類型:System.String  與票證相關的使用者名稱。
            //--  issueDate  類型:System.DateTime  核發此票證時的本機日期和時間。
            //--  expiration  類型:System.DateTime  票證到期的本機日期和時間。
            //--  isPersistent  類型:System.Boolean  如果票證將存放於持續性 Cookie 中 (跨瀏覽器工作階段儲存),則為 true,否則為 false。 
            //           如果票證是存放於 URL 中,則忽略這個值。 
            //--  userData  類型:System.String  要與票證一起存放的使用者特定資料。
            //Encrypt the ticket. 加密,以策安全!
            String encryptedTicket = FormsAuthentication.Encrypt(authTicket);
            //底下的就是寫Cookie而已,請看 上集 第十六章「狀態管理
            HttpCookie authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
            if (true == isCookiePersistent)
                authCookie.Expires = authTicket.Expiration;    // cookie過期日
            //Add the cookie to the outgoing cookies collection.
            Response.Cookies.Add(authCookie);
            //通過身份驗證的人,才能看見原本的網頁,例如Hello.aspx。
            //通過驗證後,自動回到(導向)原本想看的網頁。
            Response.Redirect(FormsAuthentication.GetRedirectUrl(TextBox1.Text, false));
        }
        else        {
            Response.Write("

登入失敗(帳號或密碼錯誤)

");
        }
    }
註解:  程式中用到的 FormsAuthentication ,請看 
................................................................................................................................................

Web.Config檔案裡面需要一些設定:
也因為 Web.Config檔鎖定了所有檔案,只要您想直接開啟(觀看)網頁,就會「被導向」登入畫面 ( 檔案 Session_Login.aspx )
帳號、密碼都正確後,才能看到這些「後台管理區」的網頁。
這樣的功能,您可以用本文範例來做(用 Web.Config 鎖死這些需要權限的檔案)
也可以自己寫,其實不會太困難喔,如下圖。
 
範例下載 --  https://onedrive.live.com/?id=6F7F668080F24B20%21115&cid=6F7F668080F24B20
檔名:WebSite3_Easy_Login_FormsAuthentication.rar  (C#)
      WebSite3_Easy_Login_FormsAuthentication_VB.rar  (VB)

動手先玩一下,知道他運作的流程。
然後再來審閱程式裡面的邏輯、參數的用法。

這個範例是從微軟MSDN範例裡面,簡化而來。特此感謝。
如果您要下載上面這個 Windows AD來作會員登入 範例,可以參閱我以前的文章:

      ASP.NET透過AD進行驗證 #4 -- 會員登入、會員專屬網頁 / Login AD Account


相關範例可以參考   topcat撰寫的 -- [範例]ASP.NET使用Session驗證練習範例

2016年12月21日 星期三

資訊安全 - 3M 獅子王 (便利貼 密碼)。密碼規則複雜、更換週期頻繁,就會安全?

資訊安全 - 3M 獅子王 (便利貼 密碼)。密碼規則複雜、更換週期頻繁,就會安全?

當您把密碼規則設定得太複雜,例如:每隔九十天要更換密碼、密碼不能跟以前用過的相同(強迫更新).....
到最後的結果,就是 User根本記不住密碼,而需要依賴其他輔助
台語的俗諺有云「 嚴官府出厚賊;嚴爸母出阿里不達。」


上課時,常常要找圖片,卻找不到,幫自己做一個記錄

當您把密碼規則設定得太複雜,例如:每隔九十天要更換密碼、密碼不能跟以前用過的相同(強迫更新).....
到最後的結果,就是 User根本記不住密碼,而需要依賴其他輔助

台語的俗諺有云「 嚴官府出厚賊;嚴爸母出阿里不達。」
釋義    嚴格的官府反而出現很多小偷;父母太嚴格,小孩越是不成材。
說明  http://twblg.dict.edu.tw/holodict_new/result_detail.jsp?source=8&in_idx=09uann1&n_no=60384&curpage=2&sample=%E5%AE%98&radiobutton=1&querytarget=2&limit=20&pagenum=2&rowcount=34
......有點物極必反、弄巧成拙的意思在內

搜尋關鍵字「post-it password」可以找到這些圖片
如下圖:
http://stanbiron.com/content/binary/passwordPostIt.jpg

http://cdn.phys.org/newman/gfx/news/hires/2013/postitnotesa.jpg
http://c8.alamy.com/comp/A0X1K9/sticky-notes-fill-computer-monitor-and-office-wall-A0X1K9.jpg
https://au.linkedin.com/mpr/mpr/shrinknp_400_400/AAEAAQAAAAAAAAc1AAAAJDdhZjY5MDhiLWIxMjItNDM2YS05ZGJiLWZjYTY0NTVjODc3Yw.jpg

有一本資訊安全的書籍,戲稱這叫做「獅子王(Lion King)」
因為貼滿銀幕四周的 3M便利貼紙(黃色),如同公獅子的鬃毛。     哈哈哈~~

相關文章與範例:


我將思想傳授他人, 他人之所得,亦無損於我之所有;
猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson

寫信給我--  mis2000lab (at) yahoo.com.台灣  或是  school (at) mis2000lab.net
................   facebook社團   https://www.facebook.com/mis2000lab   ......................
................   Google+   https://plus.google.com/100202398389206570368/posts ........
................  YouTube (ASP.NET) 線上教學影片  http://goo.gl/rGLocQ