ClientFormsAuthenticationMembershipProvider.Logout Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cierra la sesión del usuario.
public:
void Logout();
public void Logout ();
member this.Logout : unit -> unit
Public Sub Logout ()
Excepciones
El valor de la propiedad IsOffline es false
y el proveedor de pertenencia no puede tener acceso al servicio de autenticación.
Ejemplos
En el código de ejemplo siguiente se muestra cómo usar este método para cerrar la sesión del usuario.
private void logoutButton_Click(object sender, EventArgs e)
{
SaveSettings();
ClientFormsAuthenticationMembershipProvider authProvider =
(ClientFormsAuthenticationMembershipProvider)
System.Web.Security.Membership.Provider;
try
{
authProvider.Logout();
}
catch (WebException)
{
MessageBox.Show("Unable to access the authentication service." +
Environment.NewLine + "Logging off locally only.",
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
ConnectivityStatus.IsOffline = true;
authProvider.Logout();
ConnectivityStatus.IsOffline = false;
}
Application.Restart();
}
Private Sub logoutButton_Click(ByVal sender As Object, _
ByVal e As EventArgs) Handles logoutButton.Click
SaveSettings()
Dim authProvider As ClientFormsAuthenticationMembershipProvider = _
CType(System.Web.Security.Membership.Provider, _
ClientFormsAuthenticationMembershipProvider)
Try
authProvider.Logout()
Catch ex As WebException
MessageBox.Show("Unable to access the authentication service." & _
Environment.NewLine & "Logging off locally only.", _
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning)
ConnectivityStatus.IsOffline = True
authProvider.Logout()
ConnectivityStatus.IsOffline = False
End Try
Application.Restart()
End Sub
Comentarios
El Logout método borra todas las cookies de autenticación de la caché de cookies y restablece la static
Thread.CurrentPrincipal propiedad a un WindowsPrincipal objeto que contiene el objeto actual WindowsIdentity.
Después de llamar a este método, el usuario actual ya no se autentica para los servicios de aplicación cliente. Esto significa que no se pueden recuperar roles a través de la clase y la ClientRoleProvider configuración a través de la ClientSettingsProvider clase . Sin embargo, dado que el usuario puede tener una identidad de Windows válida, es posible que todavía reciba un true
valor de código como el siguiente: Thread.CurrentPrincipal.Identity.IsAuthenticated
. Para determinar si el usuario está autenticado para los servicios de aplicación cliente, confirme que el Identity valor de propiedad del recuperado a través de IPrincipal la static
CurrentPrincipal propiedad es una ClientFormsIdentity referencia. A continuación, compruebe la ClientFormsIdentity.IsAuthenticated propiedad .
Para volver a autenticar al usuario actual, llame al ClientFormsAuthenticationMembershipProvider.ValidateUser método o al static
Membership.ValidateUser método .
Se aplica a
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de