ActiveDirectoryMembershipProvider.ChangePasswordQuestionAndAnswer Yöntem

Tanım

Active Directory deposundaki bir kullanıcının parola sorusunu ve yanıtını Güncelleştirmeler.

public:
 override bool ChangePasswordQuestionAndAnswer(System::String ^ username, System::String ^ password, System::String ^ newPasswordQuestion, System::String ^ newPasswordAnswer);
public override bool ChangePasswordQuestionAndAnswer (string username, string password, string newPasswordQuestion, string newPasswordAnswer);
override this.ChangePasswordQuestionAndAnswer : string * string * string * string -> bool
Public Overrides Function ChangePasswordQuestionAndAnswer (username As String, password As String, newPasswordQuestion As String, newPasswordAnswer As String) As Boolean

Parametreler

username
String

Parola sorusunu ve yanıtını değiştirecek kullanıcı.

password
String

Belirtilen kullanıcının parolası.

newPasswordQuestion
String

Belirtilen kullanıcı için yeni parola sorusu.

newPasswordAnswer
String

Belirtilen kullanıcı için yeni parola yanıtı.

Döndürülenler

true güncelleştirme başarılı olursa; aksi takdirde , false. false Parola yanlışsa, kullanıcı kilitliyse veya kullanıcı Active Directory veri deposunda yoksa değeri de döndürülür.

Özel durumlar

Yönetici, parola soru-cevap alanlarını Active Directory şemasının öznitelikleriyle eşlemedi.

username boş veya kullanıcı adı için uzunluk üst sınırını (genellikle 256 karakter) aşıyor.

-veya-

username virgül içerir.

-veya-

Kullanıcı adı özniteliğine userPrincipalName eşlenir ve username parametresi ters eğik çizgi içerir.

-veya-

password sıfır uzunluklu bir dizedir.

-veya-

password en fazla parola uzunluğunu (genellikle 128 karakter) aşıyor.

-veya-

newPasswordQuestion boş ve RequiresQuestionAndAnswer özellik değeri ise olur true.

-veya-

newPasswordQuestion 256 karakteri aşıyor.

-veya-

newPasswordAnswer yanıt şifrelendiğinde 128 karakteri aşıyor.

username, null değeridir.

-veya-

password, null değeridir.

-veya-

newPasswordQuestion is null ve RequiresQuestionAndAnswer özelliği: true.

-veya-

newPasswordAnswer is null ve RequiresQuestionAndAnswer özelliği: true.

machineKey Öğesi (ASP.NET Ayarlar Şeması) yapılandırma öğesi, otomatik olarak oluşturulan bir makine şifreleme anahtarını gösterir. ile parola yanıtlarını depolamak için machineKey Öğesi (ASP.NET Ayarlar Şeması) öğesinin özniteliğini ActiveDirectoryMembershipProvideraçıkça ayarlamanız decryptionKey gerekir.

Açıklamalar

Yöntemi, Active Directory üyelik deposundaki ActiveDirectoryMembershipUser bir kullanıcının parola sorusunu ve yanıtını güncelleştirmek için sınıfı tarafından çağrılır.

Parola sorusu ve yanıtı gerektirmek, kullanıcının parolasını sıfırlarken ek bir güvenlik katmanı sağlar. Kullanıcı adı oluştururken, kullanıcı daha sonra unutulan parolayı sıfırlamak için kullanılabilecek bir soru ve yanıt sağlayabilir. yöntemi, ChangePasswordQuestionAndAnswer üyelik kullanıcısının parola sorusunu ve yanıtını yeni değerlerle güncelleştirir.

yöntemini kullanmak için uygulamanızın ChangePasswordQuestionAndAnswer yapılandırma dosyasında şu ek öznitelikleri ayarlamanız gerekir:

  • requiresQuestionAndAnswer olmalıdır true.

  • attributeMapPasswordQuestion ve attributeMapPasswordAnswer Active Directory şemasındaki özniteliklerle eşlenmelidir.

Yukarıdaki ölçütler karşılanmazsa, başlatma sırasında bir ProviderException oluşturulur.

Örnek, ActiveDirectoryMembershipProvider kullanıcı adı/parola bileşimini doğrulamak için ve password parametrelerinde username sağlanan kimlik bilgileriyle Active Directory veri deposuna bağlanır. Sorunun ve yanıtın gerçek güncelleştirmesi, sağlayıcının yapılandırılmış bağlantı kimlik bilgileriyle gerçekleştirilir.

yöntemine ChangePasswordQuestionAndAnswer yanlış parola sağlanırsa, dizin sunucusu geçersiz parola girişimlerini izleyen sayaçları artırır. Bu, kullanıcının kilitli olmasına ve yönteme yapılan bir çağrı tarafından kilit durumu temizleninceye veya dizinde belirtilen kilitli süre geçene UnlockUser kadar oturum açamamasına neden olabilir.

Sorunun ve yanıtın güncelleştirmesi başarılı olursa ve EnablePasswordReset özelliği ise truekullanıcının hatalı parola yanıt izleme sayaçları sıfırlanır.

Parola yanıtı, Active Directory veri deposunda depolanmadan önce yöntemi kullanılarak EncryptPassword şifrelenir. Şifreleme anahtarı ve algoritması machineKey Öğesi (ASP.NET Ayarlar Şeması) yapılandırma öğesi tarafından belirtilir. machineKey Öğesi (ASP.NET Ayarlar Şeması) öğesindeki şifre çözme özniteliği belirtilmelidir, ActiveDirectoryMembershipProvider sınıf otomatik olarak oluşturulan şifreleme anahtarlarını desteklemez.

Parola sorusunun uzunluk üst sınırı 256 karakterdir. Parola yanıtı için uzunluk üst sınırı 128 karakterdir.

Baştaki ve sondaki boşluklar hariç passwordtüm parametre değerlerinden kırpılır.

Sağlayıcı, bağlantı dizesinde belirtilen arama noktasından başlayarak kullanıcı adı için bir alt ağaç araması gerçekleştirerek güncelleştirilecek kullanıcı örneğini bulur. ActiveDirectoryMembershipProvider Bağlantı dizeleri hakkında daha fazla bilgi için sınıf konusuna bakın.

Şunlara uygulanır

Ayrıca bkz.