• 28 Mart 2024 19:50

Sait ORHAN

Öğretmek için Öğrenin- Öğrenmek için Öğretin

C# ile Active Directory Kullanıcı Şifresi Değiştirme

Active Directory (AC) üzerinde kullanıcı şifresi değiştirmek için öncelikle projemize System.DirectoryService ve System.DitectoryService.AccountManagement dll lerinin projeye referans olarak verilmesi gerekmektedir.

using (var context = new PrincipalContext(ContextType.Domain, DomainName, UserName, Password))
{
using (var user = UserPrincipal.FindByIdentity(context, IdentityType.SamAccountName, userName1))
{
user.SetPassword(password1);
}
}
  • DomainName: Üzerinde çalışılan domain adı (string)
  • UserName: Sunucuya bağlanmak için kullanılacak olan kullanıcı adı
  • Password: Sunucuya bağlanmak için kullanılacak olan şifre
  • userName1: Şifresi değiştirilecek olan kullanıcı
  • password1: Kullanıcıya atanacak yeni şifre

Burada PrincipalContext nesnesi “new PrincipalContext(ContextType.Domain)” olarak oluşturulursa programımız çalışırken Windows hesabından doğrulama alır.

Program çalışırken LDAP sunucusuna bağlanamama hatası vermesi durumunda domain adını sunucudaki adıyla tam olarak yazın. Örneğin domain adınız “erciyes” ise tam adı da “erciyes.local” ise constructure parametresine “erciyes.local” olarak yazın.

3 thoughts on “C# ile Active Directory Kullanıcı Şifresi Değiştirme”
  1. C# ile windows kullanıcı şifresi nasıl değiştirilir yardımcı olursanız sevinirim.

    1. local kullanıcı şifesi değiştirmek için aynı kodu kullanabilirsiniz. Ancak PrincipalContext parametresine ContextType.Machine vermeniz gerekmektedir.
      var Context = new PrincipalContext(ContextType.Machine);
      var User = UserPrincipal.FindByIdentity(Context, IdentityType.SamAccountName, username);
      User.ChangePassword(eski_sifre, yeni_sifre);

      veya yönetici yetkisine sahipseniz yazıdaki gibi direk setPassword metodu da kullanabilirsiniz.

      1. Çok sağ olun gerçekten çok işime yaradı. İyi çalışmalar…

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.