ClaimsAuthenticationManager Classe

Définition

Définit l’implémentation de base pour un gestionnaire d’authentification de revendications. Le gestionnaire d’authentification des revendications fournit un emplacement dans le pipeline de traitement des revendications pour appliquer la logique de traitement (filtrage, validation, extension) à la collection de revendications dans le principal entrant avant que l’exécution atteigne votre code d’application.

public ref class ClaimsAuthenticationManager : System::IdentityModel::Configuration::ICustomIdentityConfiguration
public class ClaimsAuthenticationManager : System.IdentityModel.Configuration.ICustomIdentityConfiguration
type ClaimsAuthenticationManager = class
    interface ICustomIdentityConfiguration
Public Class ClaimsAuthenticationManager
Implements ICustomIdentityConfiguration
Héritage
ClaimsAuthenticationManager
Implémente

Exemples

Le code suivant montre un gestionnaire d’authentification de revendications simple qui ajoute une revendication de rôle au principal entrant sans effectuer de vérification sur les revendications entrantes.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.Security.Claims;

namespace MyClaimsAuthenticationManager
{
    class SimpleClaimsAuthenticatonManager : ClaimsAuthenticationManager
    {
        public override ClaimsPrincipal Authenticate(string resourceName, ClaimsPrincipal incomingPrincipal)
        {
            if (incomingPrincipal != null && incomingPrincipal.Identity.IsAuthenticated)
            {
                ((ClaimsIdentity)incomingPrincipal.Identity).AddClaim(new Claim(ClaimTypes.Role, "User"));
            }
            return incomingPrincipal; 
        }
    }
}

Le code XML suivant montre l’élément <claimsAuthenticationManager> .

<system.identityModel>
  <identityConfiguration>
    <claimsAuthenticationManager type="MyClaimsAuthenticationManager.SimpleClaimsAuthenticatonManager, MyClaimsAuthenticationManager" />

    ...

  </identityConfiguration>
</system.identityModel>

Remarques

Le gestionnaire d’authentification des revendications fournit un point d’extensibilité dans le pipeline de traitement des revendications de l’application que vous pouvez utiliser pour valider, filtrer, modifier, injecter de nouvelles revendications dans l’ensemble de revendications présentées par un ClaimsPrincipal avant l’exécution du code d’application rp. Vous pouvez même retourner une implémentation personnalisée de ClaimsPrincipal si votre application rp l’exige. L’implémentation par défaut fournie par la ClaimsAuthenticationManager classe retourne les revendications dans l’objet ClaimsPrincipal non modifié ; toutefois, vous pouvez dériver de cette classe et remplacer la Authenticate méthode pour modifier les revendications dans le ClaimsPrincipal (ou pour renvoyer une valeur personnalisée ClaimsPrincipal).

Une raison classique de créer un gestionnaire d’authentification de revendications personnalisé consiste à ajouter, supprimer ou transformer des revendications basées sur des informations connues uniquement ou qui sont, peut-être, mieux gérées par l’application rp. Par exemple, un historique des achats des clients dans une application de panier d’achat peut être conservé dans une base de données conservée par l’application rp, puis ajouté au principal de revendications retourné par le gestionnaire d’authentification des revendications en fonction de la valeur d’une revendication de nom trouvée dans le principal entrant.

Vous pouvez configurer votre application pour qu’elle utilise une ClaimsAuthenticationManager application par programmation à l’aide de la classe ou dans la IdentityConfiguration configuration via l’élément <claimsAuthenticationManager> (qui est un élément enfant de l’élément <identityConfiguration> ). Vous pouvez remplacer la méthode pour fournir un LoadCustomConfiguration traitement pour les éléments enfants personnalisés de l’élément par le <claimsAuthenticationManager> biais duquel votre gestionnaire personnalisé peut être configuré. L’implémentation de base de ClaimsAuthenticationManager ne gère aucun élément enfant.

La configuration de votre application pour utiliser un gestionnaire d’authentification de revendications garantit qu’elle sera appelée par Windows Identity Foundation (WIF) à partir du pipeline de requête.

Constructeurs

Nom Description
ClaimsAuthenticationManager()

Initialise une nouvelle instance de la classe ClaimsAuthenticationManager.

Méthodes

Nom Description
Authenticate(String, ClaimsPrincipal)

En cas de substitution dans une classe dérivée, retourne un ClaimsPrincipal objet conforme aux exigences de l’application RP. L’implémentation par défaut ne modifie pas l’entrée ClaimsPrincipal.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
LoadCustomConfiguration(XmlNodeList)

En cas de substitution dans une classe dérivée, charge une configuration personnalisée à partir de XML.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

S’applique à