SqlMembershipProvider.PasswordFormat Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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 Hashed
ayarlar.
<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.