檢測域賬號是否禁用、密碼是否永不過期

shenshu發表於2024-08-28
using System;
using System.DirectoryServices.AccountManagement;

class Program
{
    static void Main(string[] args)
    {
        // 從控制檯輸入使用者名稱
        Console.Write("請輸入要查詢的使用者名稱: ");
        string userName = Console.ReadLine();

        // 使用當前預設域名
        using (PrincipalContext context = new PrincipalContext(ContextType.Domain))
        {
            // 查詢使用者
            UserPrincipal user = UserPrincipal.FindByIdentity(context, userName);
            if (user != null)
            {
                // 檢查賬號是否禁用
                bool isAccountDisabled = user.Enabled.HasValue && !user.Enabled.Value;
                Console.WriteLine("賬號是否禁用: " + isAccountDisabled);

                // 檢查密碼是否永不過期
                bool isPasswordNeverExpires = user.PasswordNeverExpires;
                Console.WriteLine("密碼是否永不過期: " + isPasswordNeverExpires);
            }
            else
            {
                Console.WriteLine("找不到使用者: " + userName);
            }
        }
        Console.ReadKey();
    }
}

相關文章