Comparteix a través de


ActiveDirectoryMembershipUser Clase

Definición

Expone y actualiza información de usuario de pertenencia almacenada en un almacén de datos de Active Directory.

public ref class ActiveDirectoryMembershipUser : System::Web::Security::MembershipUser
[System.Serializable]
public class ActiveDirectoryMembershipUser : System.Web.Security.MembershipUser
[<System.Serializable>]
type ActiveDirectoryMembershipUser = class
    inherit MembershipUser
Public Class ActiveDirectoryMembershipUser
Inherits MembershipUser
Herencia
ActiveDirectoryMembershipUser
Atributos

Ejemplos

En el ejemplo de código siguiente se muestra el uso de propiedades en el ActiveDirectoryMembershipUser objeto de una página web que puede devolver información de usuario de varios almacenes de datos de pertenencia. Dado que el ActiveDirectoryMembershipUser objeto que subyace al MembershipUser objeto devuelto por el proveedor de pertenencia no implementa las LastActivityDate propiedades y LastLoginDate , el código comprueba primero el tipo del objeto de usuario devuelto por el proveedor de pertenencia antes de mostrar el contenido de esas propiedades.


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  protected void Page_Load(object sender, EventArgs e)
  {
    MembershipUser user =
        Membership.GetUser();

    userName.Text = user.UserName;
    emailAddress.Text = user.Email;

    // <Snippet2>
    if (user is ActiveDirectoryMembershipUser)
    {
      lastLoginDate.Text = "Not available";
      lastActivityDate.Text = "Not available";
    }
    else
    {
      lastLoginDate.Text = user.LastLoginDate.ToShortDateString();
      lastActivityDate.Text = user.LastActivityDate.ToShortDateString();
    }
    // </Snippet2>   
    
    // <Snippet3>
    System.Security.Principal.SecurityIdentifier sidValue =
      (System.Security.Principal.SecurityIdentifier)user.ProviderUserKey;

    sid.Text = sidValue.ToString();
    // </Snippet3>
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <title>User information</title>
</head>
<body>
  <form id="form1" runat="server">
    <div>
      <table>
        <tr>
          <td>
            User name:</td>
          <td>
            <asp:Literal ID="userName" runat="server" /></td>
        </tr>
        <tr>
          <td>
            Email Address:</td>
          <td>
            <asp:Literal ID="emailAddress" runat="server" /></td>
        </tr>
        <tr>
          <td>
            Last Login Date:</td>
          <td>
            <asp:Literal ID="lastLoginDate" runat="server" /></td>
        </tr>
        <tr>
          <td>
            Last Activity Date:</td>
          <td>
            <asp:Literal ID="lastActivityDate" runat="server" /></td>
        </tr>
        <tr>
          <td>
            Security Identifier SID:</td>
          <td>
            <asp:Literal ID="sid" runat="server" /></td>
        </tr>
      </table>
    </div>
  </form>
</body>
</html>

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
    Dim user As MembershipUser = Membership.GetUser()
        
    userName.Text = user.UserName
    emailAddress.Text = user.Email
        
    ' <Snippet2>
    If TypeOf (user) Is ActiveDirectoryMembershipUser Then
      lastLoginDate.Text = "Not available"
      lastActivityDate.Text = "Not available"
    Else
      lastLoginDate.Text = user.LastLoginDate.ToString()
      lastActivityDate.Text = user.LastActivityDate.ToString()
    End If
    ' </Snippet2>
    
    ' <Snippet3>
    Dim sidValue As System.Security.Principal.SecurityIdentifier
    sidValue = CType(user.ProviderUserKey, System.Security.Principal.SecurityIdentifier)
    
    sid.Text = sidValue.ToString()
    ' </Snippet3>
  End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <title>User information page</title>
</head>
<body>
  <form id="form1" runat="server">
    <div>
      <table>
        <tr>
          <td>
            User name:</td>
          <td>
            <asp:Literal ID="userName" runat="server" /></td>
        </tr>
        <tr>
          <td>
            Email Address:</td>
          <td>
            <asp:Literal ID="emailAddress" runat="server" /></td>
        </tr>
        <tr>
          <td>
            Last Login Date:</td>
          <td>
            <asp:Literal ID="lastLoginDate" runat="server" /></td>
        </tr>
        <tr>
          <td>
            Last Activity Date:</td>
          <td>
            <asp:Literal ID="lastActivityDate" runat="server" /></td>
        </tr>
        <tr>
          <td>
            Security Identifier SID:</td>
          <td>
            <asp:Literal ID="sid" runat="server" /></td>
        </tr>
      </table>
    </div>
  </form>
</body>
</html>

Comentarios

El ActiveDirectoryMembershipUser objeto se usa para representar un único usuario de pertenencia en el almacén de datos de pertenencia a Active Directory. Expone información sobre el usuario de pertenencia, como la dirección de correo electrónico, y proporciona funcionalidad para el usuario de pertenencia, como la capacidad de cambiar o restablecer su contraseña.

El proveedor de pertenencia de la aplicación devuelve un ActiveDirectoryMembershipUser objeto cada vez que la aplicación está configurada para usar un almacén de datos de Active Directory. En una aplicación que se puede configurar para usar distintos almacenes de datos o en una aplicación que usa varios almacenes de datos, puede hacer referencia a la clase base, MembershipUser. Dado que el ActiveDirectoryMembershipUser objeto no implementa las LastActivityDate propiedades y LastLoginDate , debe estar preparado para controlar el NotSupportedException objeto que se produce cuando se accede a estos miembros en un ActiveDirectoryMembershipUser objeto .

La ActiveDirectoryMembershipUser clase implementa optimizaciones internas usadas por la ActiveDirectoryMembershipProvider clase para minimizar el número de actualizaciones de atributos que se producen al llamar al UpdateUser método . También serializa la SecurityIdentifier representación (disponible en la ProviderUserKey propiedad ) para que un ActiveDirectoryMembershipUser objeto se pueda serializar y deserializar sin producir excepciones.

Los métodos y devuelven GetUser un ActiveDirectoryMembershipUser objeto o como parte de un MembershipUserCollection devuelto por los GetAllUsersmétodos , FindUsersByNamey FindUsersByEmail .CreateUser

El método requiere UpdateUser un ActiveDirectoryMembershipUser objeto cuando desea actualizar la información de un usuario de pertenencia existente.

ActiveDirectoryMembershipUser las propiedades se asignan a atributos de Active Directory. En la tabla siguiente se enumeran las ActiveDirectoryMembershipUser propiedades y sus asignaciones de atributos predeterminadas.

Propiedad. Atributo de directorio predeterminado ¿Se puede asignar?
ProviderUserKey securityIdentifier No
UserName userPrincipalName Sí, pero debe ser userPrincipalName o sAMAccountName.
Comment comment No
CreationDate whenCreated No
Email mail Sí, pero debe ser un atributo de un solo valor de tipo String Unicode.
LastActivityDate N/D No admitida por ActiveDirectoryMembershipProvider.
LastLoginDate N/D No admitida por ActiveDirectoryMembershipProvider.
LastPasswordChangedDate pwdLastSet No
PasswordQuestion none, pero debe asignarse a un atributo si se usa la seguridad de preguntas y respuestas para el restablecimiento o recuperación de contraseñas. Sí, pero debe ser un atributo de un solo valor de tipo String Unicode.
IsApproved User-Account-Control (AD)

mDS-UserAccountDisabled (ADAM)
No
IsLockedOut calculado desde lockoutTime y la duración del bloqueo de AD (AD en Windows 2000)

msDS-User-Account-Control-Computed (AD en Windows Server 2003)

msDS-User-Account-Control-Computed (ADAM)
No
LastLockoutDate Si se bloquea debido a demasiados intentos de contraseña incorrectos, se devuelve el atributo de tiempo de bloqueo.

Si se bloquea debido a demasiados intentos de respuesta de contraseña incorrectas, se devuelve el valor almacenado en el atributo definido por attributeMapFailedPasswordAnswerLockoutTime .

Si se bloquea debido a una contraseña incorrecta y a demasiados intentos de contraseña incorrectas, se devuelve el valor de fecha y hora más reciente.

Si la cuenta no está bloqueada, devuelva 1/1/1753 por compatibilidad con SQL.
No

Constructores

ActiveDirectoryMembershipUser()

Inicializa una nueva instancia de un objeto ActiveDirectoryMembershipUser para una clase que hereda la clase ActiveDirectoryMembershipUser.

ActiveDirectoryMembershipUser(String, String, Object, String, String, String, Boolean, Boolean, DateTime, DateTime, DateTime, DateTime, DateTime)

Crea una nueva instancia de la clase ActiveDirectoryMembershipUser con los valores de propiedades especificados.

Propiedades

Comment

Obtiene o establece la información específica de la aplicación para el usuario de pertenencia.

CreationDate

Obtiene la fecha y la hora en que se agregó el usuario al almacén de datos de la suscripción.

(Heredado de MembershipUser)
Email

Obtiene o establece la dirección de correo electrónico del usuario de pertenencia.

IsApproved

Obtiene o establece un valor que indica si se puede autenticar el usuario de pertenencia.

IsLockedOut

Obtiene un valor que indica si el usuario de pertenencia está bloqueado y no se puede validar.

(Heredado de MembershipUser)
IsOnline

Obtiene si el usuario está en línea actualmente.

(Heredado de MembershipUser)
LastActivityDate

Se produce una excepción NotSupportedException en todos los casos.

LastLockoutDate

Obtiene la última fecha y hora en que se bloqueó el usuario de pertenencia.

(Heredado de MembershipUser)
LastLoginDate

Se produce una excepción NotSupportedException en todos los casos.

LastPasswordChangedDate

Obtiene la fecha y la hora en que se actualizó por última vez la contraseña del usuario de pertenencia.

(Heredado de MembershipUser)
PasswordQuestion

Obtiene la pregunta de contraseña del usuario de pertenencia.

(Heredado de MembershipUser)
ProviderName

Obtiene el nombre del proveedor de pertenencia que almacena y recupera información de usuario para el usuario de pertenencia.

(Heredado de MembershipUser)
ProviderUserKey

Recibe el identificador de usuario del almacén de datos de Active Directory para el usuario de pertenencia.

UserName

Obtiene el nombre de inicio de sesión del usuario de pertenencia.

(Heredado de MembershipUser)

Métodos

ChangePassword(String, String)

Actualiza la contraseña del usuario de pertenencia en el almacén de datos de pertenencia.

(Heredado de MembershipUser)
ChangePasswordQuestionAndAnswer(String, String, String)

Actualiza la pregunta y la respuesta de la contraseña para el usuario de pertenencia en el almacén de datos de pertenencia.

(Heredado de MembershipUser)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetPassword()

Obtiene la contraseña del usuario de pertenencia del almacén de datos de pertenencia.

(Heredado de MembershipUser)
GetPassword(String)

Obtiene la contraseña del usuario de pertenencia del almacén de datos de pertenencia.

(Heredado de MembershipUser)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ResetPassword()

Restablece la contraseña de un usuario a una nueva contraseña generada automáticamente.

(Heredado de MembershipUser)
ResetPassword(String)

Restablece la contraseña de un usuario a una nueva contraseña generada automáticamente.

(Heredado de MembershipUser)
ToString()

Devuelve el nombre de usuario para el usuario de pertenencia.

(Heredado de MembershipUser)
UnlockUser()

Borra el estado de bloqueo del usuario para que se pueda validar el usuario de pertenencia.

(Heredado de MembershipUser)

Se aplica a

Consulte también