Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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 |
|
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
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 |
Sí |
Biblioteca de clases |
Sí |
Aplicación de consola |
Sí |
Biblioteca de controles de Windows |
Sí |
Biblioteca de controles Web |
Sí |
Servicio de Windows |
Sí |
Sitio Web |
Sí |
Permisos
El permiso siguiente puede ser necesario:
Permiso |
Descripción |
|---|---|
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