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

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

Örnekler

Aşağıdaki kod örneği, bir ASP.NET uygulamasının Web.config dosyasının bölümündeki system.web öğ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 Hashed kullanın Clear 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. 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ğeri, ASP.NET uygulamasının Web.config dosyasının providers 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 3DES değerini validation belirtirseniz veya değer belirtilmezse karma parolaların algoritma kullanılarak SHA1 karma olarak oluşturulacağını unutmayın.

Özel karma algoritması, hashAlgorithmType yapılandırma öğesinin özniteliği kullanılarak tanımlanabilir. Şifrelemeyi seçerseniz, varsayılan parola şifrelemesi AES kullanır. decryption yapılandırma öğesinin özniteliğini ayarlayarak şifreleme algoritmasını değiştirebilirsiniz. Parolaları şifrelerseniz decryptionKey öğesinde özniteliği için açık bir değer sağlamanız gerekir. AutoGenerate özniteliği için varsayılan decryptionKey değeri, 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.