다음을 통해 공유


My.User 개체

업데이트: 2007년 11월

현재 사용자에 대한 정보에 액세스할 수 있습니다.

설명

My.User 개체에 의해 노출된 속성과 메서드를 사용하면 현재 사용자에 대한 정보에 액세스할 수 있습니다. "현재 사용자"의 의미는 Windows 응용 프로그램과 웹 응용 프로그램에서 조금씩 다릅니다. Windows 응용 프로그램의 경우 현재 사용자는 응용 프로그램을 실행하는 사용자입니다. 웹 응용 프로그램의 경우 현재 사용자는 응용 프로그램에 액세스하는 사용자입니다.

My.User 속성을 사용하여 현재 사용자에 대한 IPrincipal에 액세스할 수도 있습니다. Principal 개체는 사용자 ID와 사용자가 속한 역할을 포함한 사용자의 보안 컨텍스트를 나타냅니다.

Windows 응용 프로그램의 경우 이 속성은 CurrentPrincipal 속성과 동일한 기능을 제공합니다. 웹 응용 프로그램의 경우 이 속성은 Current 속성에서 반환된 개체의 User 속성과 동일한 기능을 제공합니다.

참고:

Windows 응용 프로그램의 경우 기본적으로 Windows 응용 프로그램 템플릿에서 빌드된 프로젝트만 My.User 개체를 초기화합니다. 다른 모든 Windows 프로젝트 형식의 경우에는 My.User.InitializeWithWindowsUser 메서드를 명시적으로 호출하거나 CurrentPrincipal에 값을 할당하여 My.User 개체를 초기화해야 합니다.

참고:

Windows 95 및 Windows 98에서는 로그온한 사용자라는 개념을 지원하지 않기 때문에 이러한 운영 체제에서 실행하는 경우 My.User 개체는 현재 Windows 사용자에 대한 정보를 보고할 수 없습니다. 이러한 운영 체제에서 My.User 개체를 사용하려면 사용자 지정 인증을 구현해야 합니다. 자세한 내용은 연습: 사용자 지정 인증 및 권한 부여 구현을 참조하십시오.

작업

다음 표에서는 My.User 개체와 관련된 작업의 예를 보여 줍니다.

작업

참조

사용자의 로그인 이름 가져오기

방법: 사용자의 로그인 이름 확인

응용 프로그램이 Windows 인증을 사용하는 경우 사용자의 도메인 이름 가져오기

방법: 사용자의 도메인 확인

사용자의 역할 확인

방법: 사용자가 그룹에 있는지 여부 확인

사용자 지정 인증 구현

연습: 사용자 지정 인증 및 권한 부여 구현

예제

이 예제에서는 응용 프로그램이 Windows 인증을 사용하는지, 아니면 사용자 지정 인증을 사용하는지를 확인하고 해당 정보를 사용하여 My.User.Name 속성을 구문 분석합니다.

Function GetUserName() As String
    If TypeOf My.User.CurrentPrincipal Is _
    Security.Principal.WindowsPrincipal Then
        ' The application is using Windows authentication.
        ' The name format is DOMAIN\USERNAME.
        Dim parts() As String = Split(My.User.Name, "\")
        Dim username As String = parts(1)
        Return username
    Else
        ' The application is using custom authentication.
        Return My.User.Name
    End If
End Function

요구 사항

어셈블리: Visual Basic 런타임 라이브러리(Microsoft.VisualBasic.dll)

참고 항목

참조

My.User 개체 멤버

IPrincipal

CurrentPrincipal

User

Current