ClientFormsIdentity Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente une identité de l'utilisateur authentifiée pour les services d'application cliente en utilisant l'authentification par formulaire.
public ref class ClientFormsIdentity : IDisposable, System::Security::Principal::IIdentity
public class ClientFormsIdentity : IDisposable, System.Security.Principal.IIdentity
type ClientFormsIdentity = class
interface IIdentity
interface IDisposable
Public Class ClientFormsIdentity
Implements IDisposable, IIdentity
- Héritage
-
ClientFormsIdentity
- Implémente
Exemples
L’exemple de code suivant montre comment utiliser cette classe pour revalider silencieusement un utilisateur lorsque l’application quitte l’état hors connexion. Dans cet exemple, un gestionnaire d’événements CheckedChanged met à jour l’état hors connexion pour qu’il corresponde à la valeur de la case à cocher. Si l’utilisateur définit l’état en ligne de l’application, le gestionnaire d’événements tente de revalider l’utilisateur en appelant la RevalidateUser méthode. Toutefois, si le serveur d’authentification n’est pas disponible, le gestionnaire d’événements retourne l’application à l’état hors connexion.
Notes
La méthode RevalidateUser est fournie pour des raisons pratiques uniquement. Étant donné qu'elle n'a pas de valeur de retour, elle ne peut pas indiquer si la revalidation a échoué. La revalidation peut, par exemple, échouer si les informations d'identification de l'utilisateur ont été modifiées sur le serveur. Dans ce cas, vous souhaitez peut-être inclure du code qui valide explicitement les utilisateurs après l'échec d'un appel de service. Pour plus d’informations, consultez la section Accès aux paramètres web dans Procédure pas à pas : utilisation des services d’application client.
private void workOfflineCheckBox_CheckedChanged(
object sender, EventArgs e)
{
ConnectivityStatus.IsOffline = workOfflineCheckBox.Checked;
if (!ConnectivityStatus.IsOffline)
{
try
{
// Silently re-validate the user.
((ClientFormsIdentity)
System.Threading.Thread.CurrentPrincipal.Identity)
.RevalidateUser();
// If any settings have been changed locally, save the new
// new values to the Web settings service.
SaveSettings();
// If any settings have not been changed locally, check
// the Web settings service for updates.
Properties.Settings.Default.Reload();
}
catch (System.Net.WebException)
{
MessageBox.Show(
"Unable to access the authentication service. " +
Environment.NewLine + "Staying in offline mode.",
"Warning", MessageBoxButtons.OK,
MessageBoxIcon.Warning);
workOfflineCheckBox.Checked = true;
}
}
}
Private Sub workOfflineCheckBox_CheckedChanged( _
ByVal sender As Object, ByVal e As EventArgs) _
Handles workOfflineCheckBox.CheckedChanged
ConnectivityStatus.IsOffline = workOfflineCheckBox.Checked
If Not ConnectivityStatus.IsOffline Then
Try
' Silently re-validate the user.
CType(System.Threading.Thread.CurrentPrincipal.Identity, _
ClientFormsIdentity).RevalidateUser()
' If any settings have been changed locally, save the new
' new values to the Web settings service.
SaveSettings()
' If any settings have not been changed locally, check
' the Web settings service for updates.
My.Settings.Reload()
Catch ex As System.Net.WebException
MessageBox.Show( _
"Unable to access the authentication service. " & _
Environment.NewLine + "Staying in offline mode.", _
"Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning)
workOfflineCheckBox.Checked = True
End Try
End If
End Sub
Remarques
La fonctionnalité des services d’application cliente utilise cette classe pour représenter un utilisateur authentifié. Lorsque vous configurez votre application pour utiliser les services d’application client et l’authentification par formulaire, vous pouvez authentifier un utilisateur en appelant la static
Membership.ValidateUser méthode . Après l’authentification, vous pouvez récupérer une référence à l’instance actuelle ClientFormsIdentity via la Identity propriété du IPrincipal récupéré via la static
Thread.CurrentPrincipal propriété . Pour plus d’informations, consultez Services d’application cliente.
Vous accédez généralement à un ClientFormsIdentity objet en tant que IIdentity référence pour éviter une dépendance directe à cette classe. Vous pouvez déterminer si un utilisateur est authentifié en vérifiant la IIdentity.IsAuthenticated propriété de l’identité. Toutefois, l’utilisateur peut être authentifié pour Windows, mais pas pour les services d’application cliente. Pour déterminer si l’utilisateur est authentifié pour les services d’application cliente, vous devez également vérifier que la valeur de la IIdentity.AuthenticationType propriété est « ClientForms ».
Vous devez utiliser une référence explicite ClientFormsIdentity pour appeler la RevalidateUser méthode, qui n’est pas définie par l’interface IIdentity .
Constructeurs
ClientFormsIdentity(String, String, MembershipProvider, String, Boolean, CookieContainer) |
Initialise une nouvelle instance de la classe ClientFormsIdentity. |
Propriétés
AuthenticationCookies |
Obtient une collection des cookies extraite du service d'authentification. |
AuthenticationType |
Obtient le type d'authentification utilisé pour authentifier l'utilisateur. |
IsAuthenticated |
Obtient une valeur indiquant si l'utilisateur a été authentifié. |
Name |
Obtient le nom de l'utilisateur. |
Provider |
Obtient le fournisseur d'appartenances qui est utilisé pour authentifier l'utilisateur. |
Méthodes
Dispose() |
Libère toutes les ressources utilisées par ClientFormsIdentity. |
Dispose(Boolean) |
Libère les ressources non managées utilisées par ClientFormsIdentity et libère éventuellement les ressources managées. |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
RevalidateUser() |
Authentifie silencieusement l'utilisateur en utilisant des informations d'identification mises en cache. |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |
S’applique à
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour