Active Directory jelszó cserélése C# kódból

Sokadjára futok bele olyan feladatba, hogy Active Directory felhasználókat kell kezelnem .NET kódból. A korábbi esetekből általában csak annyira emlékszem, hogy mindent sikerült megcsinálni, de sokat szöszöltem vele. Ennek vége: mostantól minden Active Directory feladatot és a hozzá tartozó megoldást lebloggolok, hogy a jövőben vissza tudjam őket keresni. A mai megoldandó feladat:

Létező felhasználóknak jelszócserélő metódus írása (nem reset, csere)

    private void ChangePassword( string adPath, string userName, string oldPassword, string newPassword )
    {
        DirectoryEntry activeDirectory = new DirectoryEntry( adPath, userName, oldPassword );

        DirectorySearcher search = new DirectorySearcher( activeDirectory );
        using( DirectoryEntry activeDirectory = new DirectoryEntry( adPath, userName, oldPassword ) )
        {
            using( DirectorySearcher search = new DirectorySearcher( activeDirectory ) )
            {
                search.Filter = "(SAMAccountName=" + userName + ")";
                SearchResult result = search.FindOne();

                DirectoryEntry user = new DirectoryEntry( result.Path );

                user.Invoke( "ChangePassword", new object[] { oldPassword, newPassword } );
            }
        }
    }

Szuper.



Dávid Zoltán

Dávid Zoltán Mérnök Informatikusként végeztem a BME-n, jelenleg webfejlesztéssel és gépi tanulással foglalkozom.

2008.11.25. 20:44:42 | Permalink | Hozzászólások: 0 | Tárgyszavak: , ,


  • IISRESET fürgén

    Balássy György (MS RD, ASP.NET MVP, MCTS) Aki foglalkozott már valaha SharePoint programozással, valószínűleg maga is levonta azt a következtetést, hogy a SharePointos problémák 130%-a megoldható egy IISRESET-tel. Az addig rendben is van, hogy újra kell indítanunk a webalkalmazást (ez bármelyik szoftver esetén előfordulhat), de miért éppen így? Leginkább azért, mert ez összesen 8 karakter, villámgyorsan be lehet gépelni. Valljuk be magunknak őszintén, ezért szeretjük használni. Nyolc karaktert még a kattintgatásfüggő fejlesztő is hajlandó begépelni. Tovább »
  • Böngészőtől jövő kérés nyelvi beállításainak meghamisítása (Accept-Language Header állítása ISAPI filterben)

    Dávid Zoltán Minden böngészőben beállítható, hogy működése során milyen értéket küldjön az “Accept-Language” headerben a webszervernek. Sok webalkalmazás ez alapján dönti el, hogy milyen nyelvű felhasználói felületet renderel a böngészőnek küldött válaszba. Tovább »


Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások