BILGI: Form kimlik doğrulaması, Güvenli Yuva Katmanı (SSL) kullanarak güvenli Yardım

Makale çevirileri Makale çevirileri
Makale numarası: 813829 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makalede, aşağıdaki Microsoft .NET Framework Sınıf Kitaplığı ad alanına başvurulmaktadır:
  • System.Web.Security
Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Varsayılan olarak, form kimlik doğrulama bileti içeren tanımlama bilgisi güvenli bir Microsoft ASP.NET Web uygulamasında form kimlik doğrulaması'nı kullandığınızda değil. Bu makale, Güvenli Yuva Katmanı (SSL) kullanarak güvenli bir form kimlik doğrulaması amacıyla açıklamaktadır. Bu makalede, ayrıca ek uygulama seçenekleri ve güvenli bir form kimlik doğrulaması amacıyla farklı yolları açıklanır.

Daha fazla bilgi

Form tabanlı kimlik doğrulamasını uygulamaların kendi oturum açma arabirimi sağlar ve özel kimlik bilgileri doğrulaması gerçekleştirmesini sağlayan bir ASP.NET kimlik doğrulama hizmetidir. ASP.NET form kimlik doğrulaması, kullanıcıların kimliğini doğrular ve sonra da kimliği doğrulanmamış kullanıcılar <forms>loginUrl özniteliği tarafından belirtilen oturum açma sayfasına yönlendirir Web.config dosyasında öğesi. Kimlik bilgileri ile oturum açma formu sunar, uygulama isteğin kimliğini doğrular ve sonra da sistem FormsAuthenticationTicket sınıf tanımlama bilgisi biçiminde yayımlar. Bir tanımlama bilgisinde sonraki yanıt olarak geçirilen FormsAuthenticationTicket sınıf kimliği doğrulanmış bir istemciden gelen istekleri Web.

Form kimlik doğrulaması, kimlik doğrulama için esnek bir yol sağlar, ancak bir ASP.NET uygulamasının güvenliğini, bazı önemli konular dikkatlice gerekir. Kimlik bilgilerini sunucuya düz metin olarak gönderildiğinden, SSL kullanarak ilk oturum açma kimlik bilgilerini korumak gerekir. Ayrıca, form kimlik doğrulama bileti içeren bir çerez korunmanıza yardımcı emin olmalısınız. Bunu yapmak için <a0></a0>, bilet korunmasına yardımcı olmak için tüm sayfalarda SSL kullanın. Alternatif olarak, <forms><a1>koruma</a1> özniteliği ayarlayarak form kimlik doğrulama bileti şifreleyebilirsiniztüm veya şifreleme Web.config dosyası ve FormsAuthenticationşifreleme yöntemi kullanmak için bir öğe sınıfı bilet şifrelemek için. FormsAuthentication sınıfının şifreleme yöntemi hakkında daha fazla bilgi için bkz: "" bölümü, bu makalenin.

Form kimlik doğrulaması'nın yararları

  • Form kimlik doğrulamasını destekler kimlik karşı özel bir veri deposu, örneğin, bir Microsoft SQL Server veritabanına veya Active Directory dizin hizmetleri. Daha fazla bilgi için bu makalenin "REFERENCES" bölümüne bakın.
  • Form kimlik doğrulaması, veri deposundan rolünü arama ile rol tabanlı yetkilendirme destekler.
  • Form kimlik doğrulaması sorunsuz Web ile tümleşik kullanıcı arabirimi. Daha fazla bilgi için bu makalenin "REFERENCES" bölümüne bakın.
  • ASP.NET alt yapı sağlar. Görece küçük bir kod, Active Server Pages sürüm 3.0 ve öncesini karşılaştırılan için gereklidir
  • Microsoft ınternet Explorer, ASP.NET form kimlik doğrulaması gerektirmez. Form kimlik doğrulaması, bir geniş Web tarayıcı istemcilerini destekler.

Yardım yapma form kimlik doğrulaması güvenli nasıl

  • SSL, tüm sayfaları için kullanın.
  • FormsAuthentication sınıfının şifreleme yöntemini kullanın.

Tüm sayfaları için SSL kullan

Yardımcı olmak için tüm sayfalara güvenli güvenli erişim sağlamak, SSL şifrelemesini kullanarak, kimlik doğrulama tanımlama bilgisini bir istemci tarayıcı oturumu güvenli kalmasını sağlayın. Uygulama SSL şifrelemesini kullanarak, kimlik doğrulama tanımlama bilgisini tehlikeye ve diğer önemli bilgileri gönderen herkesin engellenmesine yardımcı olur.

RequireSSL özelliğinin değeri, Web.config dosyasında true olarak ayarlayın. Tanımlama bilgisini tarayıcıya geri gönderilir, bu SSL yerine koyar. RequireSSL de?erini true olarak ayarlamayın, formu bir özel durum oluşturduğunda veya ile tanımlama bilgisi kimlik doğrulaması.

RequireSSL özelliği true olarak ayarlandığında, şifrelenmiş bir bağlantı, kullanıcının kimlik bilgilerinin korunmasına yardımcı olur ve ASP.NET kimlik doğrulama tanımlama bilgisini HttpCookie.Secure özelliğini ayarlar. SSL bağlantının kullandığı sürece uyumlu tarayıcı tanımlama bilgisi döndürmez. Aşağıdaki örnek, bunun için uygulamanızın Web.config dosyasında nasıl yapılacağını gösterir:
 <configuration>
 <system.web>
   <authentication mode="Forms">
     <forms name=".ASPXAUTH"
       loginUrl="login.aspx" 
       protection="All"
       timeout="20"
       requireSSL="true">
     </forms>
   </authentication > 
   <authorization>
     <deny users="?" />
   </authorization>
 </system.web>
</configuration>
Aşağıdaki örnek, tanımlama bilgisinin güvenli biçimde aktarmak için ayarlanmışsa, eylemi gerçekleştirir:

Visual C# .NET koddize cookieName
 string cookieName = FormsAuthentication.FormsCookieName.ToString(); 
 HttpCookie MyCookie = Context.Request.Cookies[cookieName];

 if (MyCookie.Secure)
 {
      Response.Write("The cookie is secure with SSL.");
      // Add other required code here.
 } 

Visual Basic .NET kodu
   Dim cookieName As String = FormsAuthentication.FormsCookieName.ToString
   Dim MyCookie As HttpCookie = Context.Request.Cookies(cookieName)
   If MyCookie.Secure Then
      Response.Write("The cookie is secure with SSL.")
      ' Add other required code here.
   End If

Use the FormsAuthentication sınıfının yöntemini şifrele

Yalnızca SSL Web ilk oturum açma sayfasında kimlik doğrulaması için iletilen kimlik bilgileri şifrelemek için kullandığınız bir tanımlama bilgisinde bulunan formlar kimlik doğrulama bileti korunduğunu dikkat edin. Sonraki her Web isteği tanımlama bilgisinin istemci ve sunucu arasında geçirilen için Formlar kimlik doğrulama biletleri korunmalıdır. Form kimlik doğrulama anahtarı şifrelemek için <a0></a0>, <forms><a1>koruma</a1> özniteliği yapılandırın. bilet şifrelemek için öğe ve FormsAuthenticationşifreleme yöntemi kullanmak sınıf.
<authentication mode="Forms">
  <forms name="MyAppFormsAuth"
       loginUrl="login.aspx"
       protection="All"
       timeout="20" 
       path="/" >
  </forms>
</authentication> 
Uygulama FormsAuthentication.Encrypt yöntemini çağırdığında koruma özniteliği tüm için ayarlandığından, bilet doğrulanması gerekir ve şifrelenmesine.

Kimlik doğrulama bileti formları oluşturduğunuzda, şifreleme yöntemini çağırın. Genellikle uygulamanın oturum açma olay işleyicisinde bilet oluşturursunuz.

Visual C# .NET kod
string encryptedTicket = FormsAuthentication.Encrypt(authTicket);
Visual Basic .NET kodu
Dim encryptedTicket As String = FormsAuthentication.Encrypt(authTicket)

Referanslar

ASP.NET ve form kimlik doğrulaması hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitelerini ziyaret edin:
ASP.NET'te kimlik doğrulama: .NET güvenlik kılavuzu
http://msdn2.microsoft.com/en-us/library/ms978378.aspx
Form kimlik doğrulama sağlayıcısı
http://msdn2.microsoft.com/en-us/library/9wff0kyh(vs.71).aspx
SSL güvenli form kimlik doğrulamasını kullanma hakkında ek bilgi için Microsoft Knowledge Base'deki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
306590BILGI: ASP.NET güvenliğine genel bakış
315588NASıL YAPıLıR: İstemci tarafı sertifikalar'ı kullanarak bir ASP.NET uygulamasının Secure
313116SORUN: Forms kimlik doğrulama istekleri misiniz Not yönlendirilmiş loginUrl sayfa için
324069NASıL YAPıLıR:, Bir IIS HTTPS Hizmeti'nde yukarı ayarla
326340AD - NASıL YAPıLıR: form kimlik doğrulaması ve Visual Basic .NET kullanarak Active Directory karşı kimlik denetimi
301240SQL - NASıL YAPıLıR: <a1>gerçekleştir</a1> form tabanlı kimlik doğrulama de ASP.NET uygulamanızı, C# kullanarak .NET
308157SQL - NASıL YAPıLıR: Visual Basic .NET kullanarak uygulamanızı ASP.NET'in Form tabanlı kimlik doğrulama gerçekleştir
311495NASıL YAPıLıR: Role-based gerçekleştir güvenlik özellikleri içeren form tabanlı kimlik doğrulama bilgilerinizi ASP.NET'te Visual C# .NET kullanarak uygulama
306238NASıL YAPıLıR: Role-based gerçekleştir, Visual Basic .NET kullanarak uygulamanızı ASP.NET'in Form tabanlı kimlik doğrulama ile güvenlik
312906NASıL YAPıLıR: Form kimlik doğrulaması'nda kullanmak için Visual C#. NET'i kullanarak anahtarları oluştur
313091NASıL YAPıLıR: Forms'da kullanmak için Visual Basic .NET kullanarak anahtarları oluştur. kimlik doğrulama

Özellikler

Makale numarası: 813829 - Last Review: 19 Nisan 2007 Perşembe - Gözden geçirme: 2.5
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft ASP.NET 1.1
Anahtar Kelimeler: 
kbmt kbcookie kbwebforms kbauthentication kbsecurity kbconfig kbinfo KB813829 KbMttr
Machine-translated Article
Ö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:813829

Geri Bildirim Ver

 

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