SecurityTokenHandler 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.
Classe de base abstraite pour les gestionnaires de jetons de sécurité.
public ref class SecurityTokenHandler abstract : System::IdentityModel::Configuration::ICustomIdentityConfiguration
public abstract class SecurityTokenHandler : System.IdentityModel.Configuration.ICustomIdentityConfiguration
type SecurityTokenHandler = class
interface ICustomIdentityConfiguration
Public MustInherit Class SecurityTokenHandler
Implements ICustomIdentityConfiguration
- Héritage
-
SecurityTokenHandler
- Dérivé
- Implémente
Exemples
Les exemples de code de toutes les SecurityTokenHandler rubriques sont extraits de l’exemple Custom Token . Cet exemple fournit des classes personnalisées qui permettent le traitement de jetons web simples (SWT). Pour plus d’informations sur cet exemple et d’autres exemples disponibles pour WIF et où les télécharger, consultez l’index d’exemple de code WIF. Le code XML suivant montre comment ajouter le gestionnaire de jetons SWT à la collection de gestionnaires de jetons.
<system.identityModel>
<identityConfiguration saveBootstrapContext="true">
<issuerTokenResolver type="SimpleWebToken.CustomIssuerTokenResolver, SimpleWebToken">
<AddAudienceKeyPair symmetricKey="wAVkldQiFypTQ+kdNdGWCYCHRcee8XmXxOvgmak8vSY=" audience="http://localhost:19851/" />
</issuerTokenResolver>
<issuerNameRegistry type="RelyingParty.TrustedIssuerNameRegistry, RelyingParty"/>
<audienceUris>
<add value="http://localhost:19851/"/>
</audienceUris>
<securityTokenHandlers>
<add type="SimpleWebToken.SimpleWebTokenHandler, SimpleWebToken" />
</securityTokenHandlers>
</identityConfiguration>
</system.identityModel>
Remarques
La SecurityTokenHandler classe est la classe de base à partir de laquelle dérivent tous les gestionnaires de jetons de sécurité. Un gestionnaire de jetons de sécurité est responsable des opérations suivantes :
Validation des jetons de sécurité (SecurityToken) du type qu’il est conçu pour traiter et empaqueter les revendications contenues dans le jeton dans un ClaimsIdentity objet.
Sérialisation et désérialisation des jetons de sécurité du type qu’il est conçu pour traiter.
Sérialisation et désérialisation des clauses d’identificateur de clé (SecurityKeyIdentifierClause) qui font référence aux jetons du type qu’il est conçu pour traiter vers et à partir d’éléments
<wsse:SecurityTokenReference>.Création de jetons de sécurité à partir d’un SecurityTokenDescriptor objet passé par des implémentations de la SecurityTokenService classe.
Création de clauses d’identificateur de clé à partir d’un jeton de sécurité pour les implémentations de la SecurityTokenService classe.
Windows Identity Foundation (WIF) fournit les gestionnaires de jetons de sécurité suivants hors de la boîte de dialogue :
La plupart de ces classes exposent des membres supplémentaires qui implémentent des fonctionnalités spécifiques au traitement des jetons pour lesquels la classe est conçue. Dans de nombreux cas, il peut être préférable de dériver de l’une de ces classes plutôt que directement de la SecurityTokenHandler classe.
Un gestionnaire de jetons de sécurité peut être ajouté ou supprimé d’une collection de gestionnaires de jetons en spécifiant les <éléments d’ajout>, <de suppression> ou <de suppression> sous l’élément <securityTokenHandlers> dans un fichier de configuration. L’objet SecurityTokenHandlerConfiguration qui contient les paramètres de configuration de la collection de gestionnaires est accessible via la Configuration propriété et la collection de gestionnaires dont le gestionnaire de jetons est membre est membre de la ContainingCollection propriété. Vous pouvez remplacer la LoadCustomConfiguration méthode pour traiter tous les éléments de configuration personnalisés que votre gestionnaire prend.
La SecurityTokenHandler classe expose plusieurs autres propriétés et méthodes. Selon la fonctionnalité que vous choisissez d’implémenter, vous pouvez remplacer certains ou tous ces membres.
Vous devez remplacer la TokenType propriété et la GetTokenTypeIdentifiers méthode pour fournir à l’infrastructure WIF des informations sur le type de jeton de sécurité que votre classe est conçue pour traiter.
La fonctionnalité de validation, de sérialisation et de désérialisation est exposée par le biais de propriétés ou de méthodes qui indiquent si le gestionnaire peut effectuer une fonction spécifique combinée à la méthode ou aux méthodes qui implémentent la fonctionnalité. La liste suivante associe les propriétés ou méthodes qui indiquent les fonctionnalités avec les méthodes qui implémentent cette fonctionnalité :
Propriété CanValidateToken et ValidateToken méthode : valide un jeton et empaquette les revendications contenues dans le jeton dans un ClaimsIdentity.
Propriété CanWriteToken et WriteToken méthodes : sérialisation des jetons.
Méthodes CanReadToken et ReadToken méthodes : désérialisation des jetons.
Méthode CanReadKeyIdentifierClause et ReadKeyIdentifierClause méthode : Désérialisation des clauses d’identificateur de clé.
Méthode CanWriteKeyIdentifierClause et WriteKeyIdentifierClause méthode : sérialisation des clauses d’identificateur de clé.
Les CreateToken méthodes et les CreateSecurityTokenReference méthodes sont appelées à partir du pipeline dans les implémentations de la SecurityTokenService classe.
La DetectReplayedToken méthode est appelée par l’infrastructure WIF pour déterminer si le jeton spécifié a déjà été reçu. Par défaut, cette méthode retourne false, ce qui indique que le jeton n’a pas déjà été reçu. Vous pouvez remplacer la méthode et fournir une logique pour détecter les jetons relectés.
Constructeurs
| Nom | Description |
|---|---|
| SecurityTokenHandler() |
Appelé à partir de constructeurs dans des classes dérivées pour initialiser la SecurityTokenHandler classe. |
Propriétés
| Nom | Description |
|---|---|
| CanValidateToken |
Obtient une valeur qui indique si le gestionnaire prend en charge la validation des jetons de sécurité. |
| CanWriteToken |
Obtient une valeur qui indique si le gestionnaire peut sérialiser des jetons de sécurité. |
| Configuration |
Obtient ou définit l’objet SecurityTokenHandlerConfiguration qui fournit la configuration de l’instance actuelle. |
| ContainingCollection |
Obtient la collection de gestionnaires de jetons qui contient l’instance actuelle. |
| TokenType |
En cas de substitution dans une classe dérivée, obtient le type du jeton de sécurité traité par cette instance. |
Méthodes
| Nom | Description |
|---|---|
| CanReadKeyIdentifierClause(XmlReader) |
Retourne une valeur qui indique si l’élément XML référencé par le lecteur XML spécifié est une clause d’identificateur de clé qui peut être désérialisée par cette instance. |
| CanReadToken(String) |
Retourne une valeur qui indique si la chaîne spécifiée peut être désérialisée en tant que jeton du type traité par cette instance. |
| CanReadToken(XmlReader) |
Retourne une valeur qui indique si l’élément XML référencé par le lecteur XML spécifié peut être lu en tant que jeton du type traité par cette instance. |
| CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause) |
Retourne une valeur qui indique si la clause d’identificateur de clé spécifiée peut être sérialisée par cette instance. |
| CreateSecurityTokenReference(SecurityToken, Boolean) |
En cas de substitution dans une classe dérivée, crée la référence de jeton de sécurité pour les jetons traités par cette classe. Cette méthode est généralement appelée par un service de jeton de sécurité (STS). |
| CreateToken(SecurityTokenDescriptor) |
En cas de substitution dans une classe dérivée, crée un jeton de sécurité à l’aide du descripteur de jeton spécifié. Cette méthode est appelée par un service de jeton de sécurité (STS). |
| DetectReplayedToken(SecurityToken) |
En cas de substitution dans une classe dérivée, lève une exception si le jeton spécifié est détecté comme relecture. |
| 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) |
| GetTokenTypeIdentifiers() |
En cas de substitution dans une classe dérivée, retourne l’ensemble d’URI utilisés dans les requêtes pour identifier un jeton du type traité par la classe dérivée. |
| 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) |
| ReadKeyIdentifierClause(XmlReader) |
En cas de substitution dans une classe dérivée, désérialise le CODE XML référencé par le lecteur XML spécifié à une clause d’identificateur de clé qui fait référence à un jeton traité par la classe dérivée. |
| ReadToken(String) |
En cas de substitution dans une classe dérivée, désérialise la chaîne spécifiée en un jeton du type traité par la classe dérivée. |
| ReadToken(XmlReader, SecurityTokenResolver) |
En cas de substitution dans une classe dérivée, désérialise le CODE XML référencé par le lecteur XML spécifié à un jeton du type traité par la classe dérivée à l’aide du programme de résolution de jeton spécifié. |
| ReadToken(XmlReader) |
En cas de substitution dans une classe dérivée, désérialise le CODE XML référencé par le lecteur XML spécifié à un jeton du type traité par la classe dérivée. |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
| TraceTokenValidationFailure(SecurityToken, String) |
Trace l’événement d’échec pendant la validation des jetons de sécurité lorsque le suivi est activé. |
| TraceTokenValidationSuccess(SecurityToken) |
Trace la validation réussie de l’événement de jetons de sécurité lors de l’activation du suivi. |
| ValidateToken(SecurityToken) |
En cas de substitution dans une classe dérivée, valide le jeton de sécurité spécifié. Le jeton doit être du type traité par la classe dérivée. |
| WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause) |
En cas de substitution dans une classe dérivée, sérialise la clause d’identificateur de clé spécifiée en XML. La clause d’identificateur de clé doit être du type pris en charge par la classe dérivée. |
| WriteToken(SecurityToken) |
En cas de substitution dans une classe dérivée, sérialise le jeton de sécurité spécifié dans une chaîne. Le jeton doit être du type traité par la classe dérivée. |
| WriteToken(XmlWriter, SecurityToken) |
En cas de substitution dans une classe dérivée, sérialise le jeton de sécurité spécifié en XML. Le jeton doit être du type traité par la classe dérivée. |