ActiveDirectoryMembershipProvider.ChangePasswordQuestionAndAnswer Yöntem
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.
Active Directory deposundaki bir kullanıcının parola sorusu ve yanıtını güncelleştirir.
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 uzunlukta bir dizedir.
-veya-
password
parola uzunluğu üst sınırını (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ğidir true
.
-veya-
newPasswordAnswer
is null
ve RequiresQuestionAndAnswer özelliğidir 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ı decryptionKey
depolamak için machineKey Öğesi (ASP.NET Ayarlar Şeması) öğesinin özniteliğini ActiveDirectoryMembershipProvideraçıkça ayarlamanız gerekir.
ChangePasswordQuestionAndAnswer(String, String, String, String) Yöntem, örnek başlatılmadan önce ActiveDirectoryMembershipProvider çağrılır.
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 bir üyelik kullanıcısı için 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ırtrue
.attributeMapPasswordQuestion
veattributeMapPasswordAnswer
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 girilirse, 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.
Soru ve yanıt güncelleştirmesi başarılı olursa ve EnablePasswordReset özelliği ise true
kullanı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 sorusu için 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 dışındaki password
tü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.