Aracılığıyla paylaş


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 SQL Server veritabanında parola depolama biçimini gösteren değerlerden biri.

Örnekler

Aşağıdaki kod örneği, bir ASP.NET uygulaması için Web.config dosyasının bölümündeki üyelik öğesini system.web 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 algoritma 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, çünkü 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 oluşturulur. özniteliği için validation değerini 3DES belirtirseniz veya değer belirtilmezse karma parolaların algoritma kullanılarak SHA1 karma olacağını unutmayın.

Ö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.