9

ben web.config'de DefaultMembershipProvider ve SqlMembershipProvider ayarları şu var:ASP.NET kimliği için parola kuralları nasıl ayarlanır? Benim ASP.NET uygulamalarında

enablePasswordRetrieval="true" 
passwordFormat="Clear" 
requiresQuestionAndAnswer="false" 

Onlar Özet kimlik doğrulaması için gereklidir. ASP.NET Kimliğine geçmek istiyorum. Yönetdiğim tüm web.config dosyalarını güncellemek için otomatik araç kullanıyorum.

Visual Studio 2013 tarafından oluşturulan projede ASP.NET Kimliği için bu ayarları nasıl ayarlayabilirim?

+1

Şifre alma büyük ölçüde iki yönlü şifrelemeyi gerektiren ve daha sonra düz metin olarak kimlik geçişi, bir uygulamanın zayıf arttırır. Mümkünse parola sıfırlama jetonlarını e-postayla uygulamayı düşünün. – pwdst

+0

Bu durumun Digest auth ile mümkün olmadığından eminim. –

+0

Özel şifre politikası hakkında 2014 tarihli bir makale buldum. Https://blogs.msdn.microsoft.com/webdev/2014/01/06/implementing-custom-password-policy-using-asp-net-identity/ – oneNiceFriend

cevap

18

Hasat olmadan net parola sağlayabilen IPasswordHasher uygulama sağlamanız gerekir. UserManager.PasswordHasher uygulamasını uygulamanıza ayarlayabilirsiniz.

Şu an için Kimlik için web.config yapılandırılabilir ayarları bulunmamaktadır. Kodun, özellikle de Startup.cs

kodunda yapılandırılabilir biçimde yapılandırılmasını sağlamanız gerekir. Parolaları net biçimde saklamanız önerilmez.

public class ClearPassword : IPasswordHasher 
{ 
    public string HashPassword(string password) 
    { 
     return password; 
    } 

    public PasswordVerificationResult VerifyHashedPassword(string hashedPassword, string providedPassword) 
    { 
     if(hashedPassword.Equals(providedPassword)) 
      return PasswordVerificationResult.Success; 
     else return PasswordVerificationResult.Failed; 
    } 
} 
+0

şifre açık metin veya karma (hashed şifreleri kullanmamız durumunda)? – idipous

+0

Örnek, açık metin şifresidir. HashPassword (string password) işlevinde karma algoritmayı uygulayabilir ve VerifyHashedPassword işlevinde de aynı şekilde doğrulayabilirsiniz. – jd4u

+1

Teşekkürler jd4u, ama bu sınıfı nereye ekleyeceğimi ve nereye arayacağımı anlayamadım? – oneNiceFriend