วิธีการปฏิบัติตามบทบาทปลอดภัยด้วยใช้แบบฟอร์มการรับรองความถูกต้องในโปรแกรมประยุกต์ ASP.NET ของคุณโดยใช้ Visual Basic .NET

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 306238 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

บทความนี้อธิบายวิธีการใช้ขึ้นอยู่กับบทบาทการรักษาความปลอดภัยใน ASP.NET แอพลิเคชันที่ประมวลผลการรับรองตามแบบฟอร์มโดยใช้ Visual Basic .NET

ความต้องการ

บทความนี้อนุมานว่า คุณเรียบร้อยแล้วใช้แบบฟอร์มโดยใช้การรับรองความถูกต้องบนโปรแกรมประยุกต์ ASP.NETสำหรับข้อมูลเพิ่มเติม คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
308157 วิธีการปฏิบัติตามแบบฟอร์มการรับรองความถูกต้องในโปรแกรมประยุกต์ ASP.NET ของคุณโดยใช้ Visual Basic .NET

กำหนดหน้าที่ให้กับผู้ใช้ Authenticating

เนื่องจากผู้ใช้ฟอร์มโดยปกติแล้วจะไม่ ผู้ใช้ของ Microsoft Windows จะไม่มีบทบาทใด ๆ ที่เกี่ยวข้องกับเหล่านั้นตามค่าเริ่มต้น ดังนั้น คุณต้องแนบหน้าที่ของผู้ใช้ authenticating กับข้อมูลประจำตัวของผู้ใช้เพื่อให้คุณสามารถนำการรักษาความปลอดภัยตามบทบาทภายในโค้ดของคุณ

ใช้ตัวอย่างรหัสในส่วนนี้เพื่อนำมาใช้ขึ้นอยู่กับบทบาทการรักษาความปลอดภัยในโปรแกรมประยุกต์ของคุณ โค้ดตัวอย่างนี้กำหนดบทบาทได้ระบุไว้ก่อนสำหรับผู้ใช้ authenticating ขึ้นอยู่กับวิธีการจัดเก็บข้อมูลผู้ใช้ของคุณ คุณสามารถใช้วิธีการของคุณเองเพื่อเรียกบทบาทสำหรับผู้ใช้ที่มีการรับรองความถูกต้องนั้น และแนบรหัสประจำตัวของผู้ใช้ authenticating ซึ่งมีแสดงในตัวอย่างรหัสเป็นไปตามบทบาทเหล่านั้น

คัดลอกรหัสต่อไปนี้ในแฟ้ม Global.asax ของคุณในโปรแกรมประยุกต์ของคุณที่มีอยู่เมื่อต้องการกำหนด role นี้ให้กับผู้ใช้ authenticating ในตัวจัดการเหตุการณ์Application_AuthenticateRequest :
Sub Application_AuthenticateRequest(ByVal sender As Object, ByVal e As EventArgs)
if (not(HttpContext.Current.User is Nothing)) then
    if HttpContext.Current.User.Identity.AuthenticationType = "Forms" then
        Dim id as System.Web.Security.FormsIdentity
        id = HttpContext.Current.User.Identity

        Dim MyRoles(2) As String
        MyRoles(0) = "Manager"
        MyRoles(1) = "Admin"
        HttpContext.Current.User = new System.Security.Principal.GenericPrincipal(id,MyRoles) 
    End if
End if
End sub
				

ตรวจสอบบทบาทของผู้ใช้ และการปฏิบัติตามตรรกะทางโปรแกรมในเพจของคุณ ASPX

ขั้นตอนต่อไปนี้แสดงให้เห็นถึงวิธีการดำเนินการ และควบคุมตรรกะของโปรแกรมที่ขึ้นอยู่กับบทบาทผู้ใช้ authenticating เป็นสมาชิก
  1. สร้างเพจ.aspx ใหม่ที่มีชื่อว่า Sample.aspx และวางรหัสต่อไปนี้:
    <%@ Page Language="VB" %>
    <%@ Import Namespace="System.Web" %>
    
      <script runat=server>
        Sub Page_Load(Src As Object, E As EventArgs)
    	if User.IsInRole("Admin") then
    		Response.Write ("You are an Administrator")
    	Else
    		Response.Write ("You do not have any role assigned")
    	End if
        End Sub
    
      </script>
    					
  2. บันทึก Sample.aspx ในโปรแกรมประยุกต์ของคุณที่มีอยู่ เรียกดูไปยังหน้าการทดสอบดังกล่าว

ข้อมูลอ้างอิง

สำหรับภาพรวมในการรักษาความปลอดภัยของ ASP.NET ดูบทความในฐานความรู้ของ Microsoft ต่อไปนี้:
306590 ข้อมูล: ภาพรวมความปลอดภัย ASP.NET
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการรักษาความปลอดภัยตามบทบาท โปรดดูเอกสารประกอบของ.NET Framework ซอฟต์แวร์พัฒนา Kit (SDK) ต่อไปนี้:
ขึ้นอยู่กับบทบาทการรักษาความปลอดภัย
.aspx http://msdn.microsoft.com/en-us/library/52kd59t0 (vs.71)
นอกจากนี้รหัสเอกสารและแหล่งที่มาที่ MSDN เว็บไซต์ต่อไปนี้ยังประกอบด้วยรายละเอียดเกี่ยวกับการรักษาความปลอดภัยตามบทบาท:
วิธีการแก้ไขปัญหาของนักพัฒนา IBuySpy
http://msdn.microsoft.com/en-us/library/ms978480.aspx
สำหรับข้อมูลเพิ่มเติม อ้างอิงให้กับสมุดบัญชีต่อไปนี้:
Reilly, Douglas J. การออกแบบโปรแกรมประยุกต์ Microsoft ASP.NET. Microsoft Press, 2001

Esposito, Dino สร้างเว็บโซลูชันกับ ASP.NET และ ADO.NET. Microsoft Press, 2001
Microsoft ให้ข้อมูลที่ติดต่อของบริษัทอื่นเพื่อช่วยให้คุณค้นหาฝ่ายสนับสนุนทางเทคนิค ข้อมูลการติดต่อนี้อาจเปลี่ยนแปลงโดยไม่ต้องแจ้งให้ทราบ Microsoft ไม่รับประกันความถูกต้องของข้อมูลการติดต่อของบุคคลสามนี้

คุณสมบัติ

หมายเลขบทความ (Article ID): 306238 - รีวิวครั้งสุดท้าย: 24 ตุลาคม 2555 - Revision: 1.0
ใช้กับ
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Keywords: 
kbproductlink kbhowtomaster kbsecurity kbmt KB306238 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:306238

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com