My.User.CurrentPrincipal (Propiedad)

Actualización: noviembre 2007

Obtiene o establece al principal actual (para seguridad basada en funciones).

' Usage
Dim value As System.Security.Principal.IPrincipal = My.User.CurrentPrincipal
' Declaration
Public Property CurrentPrincipal As System.Security.Principal.IPrincipal

Valor devuelto

Valor IPrincipal que representa el contexto de seguridad.

Excepciones

Las condiciones siguientes pueden provocar una excepción:

  • El llamador no tiene el permiso necesario para establecer el principal (SecurityException).

Comentarios

Para habilitar la autenticación personalizada, puede establecer la propiedad My.User.CurrentPrincipal en un objeto que implementa la interfaz IPrincipal.

En la mayoría de los tipos de proyecto, esta propiedad obtiene y establece al principal actual del subproceso. En una aplicación ASP.NET, esta propiedad obtiene y establece la información de seguridad para la identidad del usuario de la solicitud HTTP actual.

Éste es un miembro avanzado; no aparece en IntelliSense a menos que seleccione la ficha Todas.

Tareas

Para

Vea

Obtener el nombre de inicio de sesión del usuario

Cómo: Determinar el nombre de inicio de sesión de un usuario

Obtener el nombre de dominio del usuario si la aplicación utiliza la autenticación de Windows

Cómo: Determinar el dominio del usuario

Implementar la autenticación personalizada

Tutorial: Implementar autenticación y autorización personalizadas

Ejemplo

En este ejemplo se comprueba si la aplicación utiliza la autenticación Windows o autenticación personalizada, y se emplea esa información para analizar la propiedad 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

Requisitos

Espacio de nombres:Microsoft.VisualBasic.ApplicationServices

Clase:User, WebUser

Ensamblado: biblioteca en tiempo de ejecución de Visual Basic (en Microsoft.VisualBasic.dll)

Disponibilidad por tipo de proyecto

Tipo de proyecto

Disponible

Aplicación para Windows

Biblioteca de clases

Aplicación de consola

Biblioteca de controles de Windows

Biblioteca de controles Web

Servicio de Windows

Sitio Web

Permisos

El permiso siguiente puede ser necesario:

Permiso

Descripción

SecurityPermission

Describe un conjunto de permisos de seguridad aplicados al código. Enumeración asociada: ControlPrincipal.

Para obtener más información, vea Seguridad de acceso a código y Solicitar permisos.

Vea también

Tareas

Cómo: Determinar el nombre de inicio de sesión de un usuario

Cómo: Determinar el dominio del usuario

Tutorial: Implementar autenticación y autorización personalizadas

Referencia

My.User (Objeto)

System.Security.Principal.IPrincipal

User.CurrentPrincipal