Visual C# .NET kullanarak uygulamanızı ASP.NET'in Form tabanlı kimlik doğrulama ile gerçekleştir role-Based Security nasıl

ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.

Makalenin İngilizcesi aşağıdaki gibidir:311495
Bu makalenin Microsoft Visual Basic .NET sürümü için bkz: 306238.

Bu makalede, aşağıdaki Microsoft .NET Framework Sınıf Kitaplığı ad alanlarına başvurulmaktadır:
  • System.Web.Security
  • System.Security.Principal

Bu görevde

Özet
Bu makalede, Visual C#. NET'i kullanarak form tabanlı kimlik doğrulaması gerçekleştiren bir ASP.NET uygulamasının rol tabanlı güvenliğin nasıl


Gereksinimler

Bu makalede, zaten form tabanlı kimlik doğrulaması üzerinde bir ASP.NET uygulamasının uygulanan olduğunu varsayar.
301240ASP.NET uygulamanızı, C#. NET'i kullanarak, form tabanlı kimlik doğrulama gerçekleştir nasıl

Kimlik doğrulama kullanıcıya roller atama

Formlar kullanıcıları genelde Microsoft Windows kullanıcıları olmadığınızdan, varsayılan olarak ilişkili herhangi bir rol yok. Bu nedenle, kodunuz rol tabanlı güvenliği uygulamak için kullanıcının kimliği için kimlik doğrulama kullanıcı rollerini iliştirmeniz gerekir.

Bu bölümdeki örnek kod, uygulamanızda rol tabanlı güvenliği uygulamak için kullanın. Bu örnek kod, kimlik doğrulama kullanıcı için belirlenmiş roller atar. Nasıl, kullanıcı verilerinizi depoladığınız bağlı olarak, kimliği doğrulanmış bir kullanıcı için rolleri almak ve bu rollerin izlemek için örnek kodda gösterildiği kimlik doğrulaması gerçekleştiren kullanıcının kimliğini eklemek için kendi yöntemi uygulayabilirsiniz.

Varolan Application_AuthenticateRequest olay işleyicisinde kimlik doğrulama kullanıcı rollerini atamak için uygulamanız Global.asax dosyasında aşağıdaki kodu kopyalayın:
public void Application_AuthenticateRequest( Object src , EventArgs e ){   if (!(HttpContext.Current.User == null))   {      if (HttpContext.Current.User.Identity.AuthenticationType == "Forms" )      {      System.Web.Security.FormsIdentity id;      id = (System.Web.Security.FormsIdentity)HttpContext.Current.User.Identity;      String[] myRoles = new String[2];      myRoles[0] = "Manager";      myRoles[1] = "Admin";      HttpContext.Current.User = new System.Security.Principal.GenericPrincipal(id,myRoles);      }   }}				

Kullanıcı rollerini denetleyin ve bilgisayarınızı .aspx sayfaları program mantığı gerçekleştir

Aşağıdaki adımlarda, uygulamak ve ait olduğu kimlik doğrulama kullanıcı rollerine göre program mantığı kontrol gösterilmektedir.
  1. Sample.aspx adlı bir .aspx yeni sayfayı oluşturun ve aşağıdaki kodu yapıştırın:
    <%@ Page Language="C#" %><%@ Import Namespace="System.Web" %>  <script runat=server>    public void Page_Load() {	if (User.IsInRole("Admin")){		Response.Write ("You are an Administrator");}	else {		Response.Write ("You do not have any role assigned");}    }  </script>					
  2. Sample.aspx varolan uygulamanızda kaydedin. Sınamak için sayfasına gidin.
Referanslar
ASP.NET'in güvenlik özellikleri hakkında ek bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
306590BILGI: ASP.NET güvenliğine genel bakış
Rol tabanlı güvenlik hakkında daha fazla bilgi için aşağıdaki .NET Framework Software Development Kit'e (SDK için) başvuru belgeleri: Belgeleri ve kaynak kodu aşağıdaki MSDN Web sitesinde ayrıca, rol tabanlı güvenlik hakkında bilgiler de içerir: Microsoft, teknik destek bulmanıza yardımcı olmak üzere üçüncü taraf iletişim bilgilerini sağlamaktadır. Bu bilgiler haber verilmeden değişebilir. Microsoft bu üçüncü taraf iletişim bilgilerinin doğruluğunu garanti etmez.

Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır

Özellikler

Makale No: 311495 - Son İnceleme: 04/19/2007 07:58:30 - Düzeltme: 3.9

Microsoft ASP.NET 1.0, Microsoft Visual C# .NET 2002 Standard Edition, Microsoft ASP.NET 1.1, Microsoft Visual C# .NET 2003 Standard Edition

  • kbmt kbhowtomaster kbsecurity KB311495 KbMttr
Geri bildirim