SqlMembershipProvider.PasswordFormat Özellik

Tanım

parolaları SQL Server üyelik veritabanında depolama biçimini gösteren bir değer alır.

public:
 virtual property System::Web::Security::MembershipPasswordFormat PasswordFormat { System::Web::Security::MembershipPasswordFormat get(); };
public override System.Web.Security.MembershipPasswordFormat PasswordFormat { get; }
member this.PasswordFormat : System.Web.Security.MembershipPasswordFormat
Public Overrides ReadOnly Property PasswordFormat As MembershipPasswordFormat

Özellik Değeri

MembershipPasswordFormat

Parolaları MembershipPasswordFormat SQL Server veritabanında depolama biçimini gösteren değerlerden biri.

Örnekler

Aşağıdaki kod örneği, bir ASP.NET uygulamasının system.web Web.config dosyasının bölümündeki üyelik öğesini gösterir. Uygulamanın SqlMembershipProvider örneğini belirtir ve parola biçimini olarak Hashedayarlar.

<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">  
  <providers>  
    <add name="SqlProvider"  
      type="System.Web.Security.SqlMembershipProvider"  
      connectionStringName="SqlServices"  
      enablePasswordRetrieval="false"  
      enablePasswordReset="true"  
      requiresQuestionAndAnswer="true"  
      passwordFormat="Hashed"  
      applicationName="MyApplication" />  
  </providers>  
</membership>  

Açıklamalar

Yalnızca Clear kullanın Hashed ve Encrypted güvenli değildir. Hashed parolalar, veritabanında depolandığında tek yönlü karma algoritması ve rastgele oluşturulan bir tuz değeri kullanılarak karma olarak oluşturulur. Bir parola doğrulandığında, doğrulama için veritabanındaki tuz değeriyle karıştırılır. Karma parolalar alınamıyor. Encrypted parolalar güvenli olarak kabul edilmez, veritabanı içeriğinizi ortaya çıkaran bir ihlal şifreleme anahtarını da açığa çıkarabilir. Bu, şifrelenmiş parolalarınızın şifresinin çözülebileceği ve kullanıma sunulduğu anlamına gelir.

PasswordFormat Değer, ASP.NET uygulaması için Web.config dosyasının sağlayıcılar bölümünde belirtilir.

Encrypted ve Hashed parolalar, yapılandırmanızdaki machineKey öğesinde sağlanan bilgilere göre varsayılan olarak şifrelenir veya karma olarak kullanılır. özniteliği için validation değerini 3DES belirtirseniz veya değer belirtilmezse, karma parolalar algoritma kullanılarak SHA1 karma olarak oluşturulur.

Özel karma algoritması, üyelik Öğesi (ASP.NET Ayarlar Şeması) yapılandırma öğesinin özniteliği kullanılarak hashAlgorithmType tanımlanabilir. Şifrelemeyi seçerseniz, varsayılan parola şifrelemesi AES kullanır. machineKey yapılandırma öğesinin özniteliğini ayarlayarak decryption şifreleme algoritmasını değiştirebilirsiniz. Parolaları şifrelerseniz machineKey öğesinde decryptionKey özniteliği için açık bir değer sağlamanız gerekir. özniteliği için decryptionKey varsayılan değeriAutoGenerate, ASP.NET Üyeliği ile şifrelenmiş parolalar kullanılırken desteklenmez.

SHA1 ile ilgili çakışma sorunları nedeniyle Microsoft, SHA256 veya üzerini temel alan bir güvenlik modeli önerir.

Şunlara uygulanır

Ayrıca bkz.