첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
본 블로그는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 블로그 콘텐츠 향상을 위해 쓰여집니다.

728x90
반응형
728x170

▶ WindowsIdentity 클래스 : 특정 윈도우즈 사용자 계정 권한 갖기 예제

LogonUser("administrator", ".", "1234");

 

▶ WindowsIdentity 클래스 : 특정 윈도우즈 사용자 계정 권한 갖기

using System;
using System.Runtime.InteropServices;
using System.Security.Principal;

#region 사용자 로그온 하기 - LogonUser(userName, domain, password)

/// <summary>
/// 사용자 로그온 하기
/// </summary>
/// <param name="userName">사용자명</param>
/// <param name="domain">도메인</param>
/// <param name="password">패스워드</param>
/// <returns>처리 결과</returns>
public bool LogonUser(string userName, string domain, string password)
{
    int token;

    bool result = LogonUser(userName, domain, password, 8, 0, out token);

    WindowsIdentity.Impersonate((IntPtr)token);

    return result;
}

#endregion

#region 사용자 로그온하기 - LogonUser(userName, domain, password, logonType, logonProvider, userToken)

/// <summary>
/// 사용자 로그온하기
/// </summary>
/// <param name="userName">사용자명</param>
/// <param name="domain">도메인</param>
/// <param name="password">패스워드</param>
/// <param name="logonType">로그온 타입</param>
/// <param name="logonProvider">로그온 공급자</param>
/// <param name="userToken">사용자 토큰</param>
/// <returns>처리 결과</returns>
[DllImport("advapi32", EntryPoint = "LogonUser", SetLastError = true)]
private static extern bool LogonUser(string userName, string domain, string password, int logonType, int logonProvider, out IntPtr userToken);

#endregion

※ XBAP에서 실행할 수 없다.

728x90
반응형
그리드형
Posted by 사용자 icodebroker

댓글을 달아 주세요