จากการเรียนรู้ ฉันได้เรียนรู้วิธีการควบคุมสองวิธีเพื่อให้บรรลุการควบคุมการเข้าถึงแบบไม่ระบุชื่อสำหรับเว็บไซต์ วิธีหนึ่งดำเนินการผ่าน IIS และอีกวิธีดำเนินการผ่าน ASP.NET โดยส่วนตัวแล้ว ฉันรู้สึกว่าไม่มีความแตกต่างระหว่างฟังก์ชันที่ทำได้โดยทั่วไปทั้งสองฟังก์ชัน แต่ฟังก์ชันที่ใช้งานผ่าน ASP.NET นั้นง่ายต่อการจัดการและบำรุงรักษา
การใช้งานผ่าน IIS ค่อนข้างชัดเจน คุณสามารถตั้งค่าสิทธิ์การเข้าถึงสำหรับโฟลเดอร์หรือไฟล์เดียว (เพจ) IIS จัดเตรียมวิธีการตั้งค่า "ความปลอดภัยของไดเรกทอรี" และคุณสามารถตั้งค่าการอนุญาตของผู้เยี่ยมชมที่แตกต่างกันได้โดยตรง ในหมู่พวกเขามีวิธีการควบคุมการเข้าถึงแบบไม่เปิดเผยตัวตนซึ่งจะไม่ได้ให้รายละเอียดไว้ที่นี่
วิธีการควบคุม ASP.NET:
ขั้นแรกแนะนำผลกระทบของตัวอย่าง หลังจากเข้าสู่ระบบเว็บไซต์ ข้อมูลผู้ใช้จะถูกบันทึกไว้ในคุกกี้และระบุผู้ใช้ว่าได้รับการรับรองความถูกต้อง เมื่อเข้าถึงหน้าอื่น ตัวตนของผู้ใช้จะสามารถตรวจสอบได้โดยตรง ตัดสินและหากผ่าน คุณจะสามารถเข้าถึงหน้าต่อไปได้ หากเป็นผู้ใช้ที่ไม่ระบุชื่อที่ไม่ผ่านการตรวจสอบ (นั่นคือ ผู้ใช้ที่ไม่ได้เข้าสู่ระบบ) ก็จะข้ามไปที่หน้าเข้าสู่ระบบ เพื่อให้ผู้ใช้เข้าสู่ระบบ ตั้งค่าหนึ่งในหน้าการลงทะเบียนผู้ใช้ให้สามารถเข้าถึงได้โดยไม่เปิดเผยตัวตน เนื่องจากตามตรรกะทางธุรกิจ คุณจะเข้าสู่ระบบได้ก็ต่อเมื่อคุณอนุญาตให้ลงทะเบียนเท่านั้น
ในหน้าเข้าสู่ระบบ คุณควรตรวจสอบชื่อผู้ใช้และรหัสผ่านของผู้ใช้ก่อน คุณสามารถใช้วิธีเปรียบเทียบกับฐานข้อมูลหรือตรวจสอบใน AD ได้ จากนั้นใช้วิธีต่อไปนี้เพื่อระบุผู้ใช้ปัจจุบันในคุกกี้เป็นผู้ใช้ที่ตรวจสอบแล้ว และ Jump ไปยังหน้าที่ผู้ใช้ร้องขอก่อนที่จะข้ามไปยังหน้า Landing Page
FormsAuthentication.RedirectFromLoginPage(userName,createPersistentCookie);
เราใช้วิธีการต่อไปนี้เพื่อตรวจสอบสิทธิ์ผู้ใช้บนเพจที่ผู้ใช้ร้องขอโดยตรง
Context.User.Identity.IsAuthenticated
Context: รับออบเจ็กต์ System.Web.HttpContext ที่เชื่อมโยงกับเพจ
ผู้ใช้: รับหรือตั้งค่าข้อมูลความปลอดภัยสำหรับการร้องขอ HTTP ปัจจุบัน
ข้อมูลประจำตัว: รับข้อมูลประจำตัวของผู้ใช้ปัจจุบัน
IsAuthenticated: รับค่าบูลที่บ่งชี้ ไม่ว่าจะเป็นผู้ใช้ที่ได้รับการยืนยันแล้ว
จากนั้นเราจะทำการตั้งค่าความปลอดภัยใน Web.config
<authentication mode="Forms">
<forms loginUrl="Login.aspx"></forms>
</authentication>
"Forms" คุณจัดเตรียมแบบฟอร์มที่กำหนดเอง (เว็บเพจ) สำหรับผู้ใช้ในการป้อนข้อมูลประจำตัวของพวกเขา จากนั้นในการตรวจสอบของคุณ ตัวตนของพวกเขาภายในแอปพลิเคชัน โทเค็นข้อมูลรับรองผู้ใช้จะถูกจัดเก็บไว้ในคุกกี้
<authorization>
<deny users="?" />
</authorization>
deny หมายถึงต้องห้าม users="?" หมายถึงผู้ใช้ที่ไม่ระบุชื่อ
<location path="NewUser.aspx">
<system.web>
<authorization>
<allow users= "*" />
</authorization>
</system.web>
</location>
หมายถึงหน้าการลงทะเบียนผู้ใช้ใหม่ NewUser.aspx ซึ่งทุกคนสามารถเข้าถึงได้
ทำให้ได้รับการควบคุมการเข้าถึงสำหรับผู้ใช้ที่ไม่ระบุชื่อ
ตัวอย่าง: ดาวน์โหลด http://bear-study-hard.cnblogs.com/archive/2006/05/31/414134.html