SessionSecurityToken Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee definieert u een beveiligingstoken dat gegevens bevat die zijn gekoppeld aan een sessie.
public ref class SessionSecurityToken : System::IdentityModel::Tokens::SecurityToken, System::Runtime::Serialization::ISerializable
[System.Serializable]
public class SessionSecurityToken : System.IdentityModel.Tokens.SecurityToken, System.Runtime.Serialization.ISerializable
[<System.Serializable>]
type SessionSecurityToken = class
inherit SecurityToken
interface ISerializable
Public Class SessionSecurityToken
Inherits SecurityToken
Implements ISerializable
- Overname
- Kenmerken
- Implementeringen
Opmerkingen
Een sessietoken slaat de ClaimsPrincipal gebruiker op die is gekoppeld aan een sessie, evenals andere parameters die de sessie definiëren, bijvoorbeeld de begin- en eindtijd van de sessie.
In passieve scenario's worden de WSFederationAuthenticationModule aanroepen naar de SessionAuthenticationModule (SAM) vanuit de verificatiepijplijn om een sessietoken te maken van de ClaimsPrincipal geverifieerde gebruiker. De SAM maakt gebruik van het geconfigureerde SessionSecurityTokenHandler token om het token te maken en het te serialiseren in een cookie (en om het token te deserialiseren van een cookie op volgende aanvragen). De SAM gebruikt een exemplaar van de geconfigureerde CookieHandler klasse om de cookie terug te schrijven naar het HTTP-antwoord. Deze cookie wordt vervolgens teruggezet naar de client en bij volgende aanvragen kan de client de cookie presenteren in plaats van een retour naar de id-provider te maken om een beveiligingstoken opnieuw te verkrijgen. Zie WIF-sessiebeheer voor meer informatie over hoe sessies werken met WIF. Zie WIF en Web Farms voor informatie over het gebruik van sessies in webfarmscenario's.
Een sessietoken kan werken in de referentiemodus of niet. Als het sessietoken niet in de referentiemodus werkt, wordt het hele token geserialiseerd in de sessiecooky die is opgeslagen op de client. Het geserialiseerde sessietoken kan behoorlijk groot zijn en de cookie die op de client is opgeslagen, kan dus ook behoorlijk groot zijn. In de referentiemodus, in plaats van het hele sessietoken in de cookie te serialiseren, wordt het token opgeslagen in een sessiebeveiligingstokencache en alleen de informatie die wordt gebruikt om de sleutel te genereren die nodig is om het token op te halen uit de cache, wordt opgeslagen in de cookie. Dit kan de grootte van het cookie aanzienlijk verminderen. De sessietokencache wordt geïmplementeerd door een klasse die is afgeleid van SessionSecurityTokenCache en de cachesleutel wordt geïmplementeerd door de SessionSecurityTokenCacheKey klasse. De ContextId eigenschappen en KeyGeneration eigenschappen worden in de SessionSecurityTokenCacheKey klasse gebruikt om de cachesleutel te genereren.
De IsReferenceMode eigenschap bepaalt of het sessietoken zich in de referentiemodus bevindt of niet.
Important
Als u in de referentiemodus wilt werken, raadt Microsoft aan om een handler op te geven voor de gebeurtenis WSFederationAuthenticationModule.SessionSecurityTokenCreated in het global.asax.cs-bestand en de eigenschap IsReferenceMode in te stellen op het token dat is doorgegeven in de eigenschap SessionSecurityTokenCreatedEventArgs.SessionToken. Dit zorgt ervoor dat het sessietoken werkt in de referentiemodus voor elke aanvraag en dat de eigenschap alleen wordt ingesteld SessionAuthenticationModule.IsReferenceMode op de module Sessieverificatie.
De SessionSecurityTokenHandler klasse met WIF serialiseert het sessietoken als een WS-Secure Gesprekselement <wsc:SecurityContextToken> .
Constructors
| Name | Description |
|---|---|
| SessionSecurityToken(ClaimsPrincipal, String, Nullable<DateTime>, Nullable<DateTime>) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse van de opgegeven principal en bootstrap-token; en met de opgegeven begin- en verlooptijd. |
| SessionSecurityToken(ClaimsPrincipal, String, String, Nullable<DateTime>, Nullable<DateTime>) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse van de opgegeven principal en bootstrap-token; en met de opgegeven begin- en verlooptijd. Het nieuwe token is gericht op het opgegeven eindpunt. |
| SessionSecurityToken(ClaimsPrincipal, String) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse van de opgegeven principal en bootstrap-token. |
| SessionSecurityToken(ClaimsPrincipal, TimeSpan) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse van de opgegeven principal. Het nieuwe token is geldig vanaf UtcNow de opgegeven levensduur. |
| SessionSecurityToken(ClaimsPrincipal, UniqueId, String, String, DateTime, TimeSpan, SymmetricSecurityKey) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse met behulp van de opgegeven principal, context-id, context, eindpunt, geldige tijdstempel, levensduur en sleutel. |
| SessionSecurityToken(ClaimsPrincipal, UniqueId, String, String, Nullable<DateTime>, Nullable<DateTime>, SymmetricSecurityKey) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse met behulp van de opgegeven principal, context-id, context, eindpunt, begintijd, verlooptijd en sleutel. |
| SessionSecurityToken(ClaimsPrincipal, UniqueId, String, String, TimeSpan, SymmetricSecurityKey) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse met behulp van de opgegeven principal, context-id, context, eindpunt, levensduur en sleutel. |
| SessionSecurityToken(ClaimsPrincipal) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse van de opgegeven principal. |
| SessionSecurityToken(SerializationInfo, StreamingContext) |
Initialiseert een nieuw exemplaar van de SessionSecurityToken klasse met geserialiseerde gegevens. |
Eigenschappen
| Name | Description |
|---|---|
| ClaimsPrincipal |
Hiermee haalt u de claimprincipaal op die aan de sessie is gekoppeld. |
| Context |
Hiermee haalt u een door de gebruiker opgegeven contextwaarde op. |
| ContextId |
Hiermee haalt u de sessiecontext-id op. |
| EndpointId |
Hiermee haalt u de id op van het eindpunt waarop dit token is gericht. |
| Id |
Hiermee haalt u de unieke id van dit token op. |
| IsPersistent |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de cookie die wordt vertegenwoordigd door dit token permanent is. |
| IsReferenceMode |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of het sessiebeveiligingstoken actief is in de referentiemodus. |
| KeyEffectiveTime |
Hiermee wordt de tijd opgehaald van waaruit de sleutel in dit token geldig is. |
| KeyExpirationTime |
Hiermee wordt de tijd opgehaald waarna de sleutel in dit token niet meer geldig is. |
| KeyGeneration |
Hiermee haalt u de id op voor de sleutelgeneratie in dit token. |
| SecureConversationVersion |
Hiermee wordt een URI opgehaald die de versie van WS-Secure Gesprek identificeert die wordt gebruikt om dit sessiebeveiligingstoken te serialiseren. |
| SecurityKeys |
Hiermee haalt u de sleutels op die aan deze sessie zijn gekoppeld. Dit is meestal één sleutel. |
| ValidFrom |
Hiermee wordt de tijd opgehaald van waaruit het token geldig is. |
| ValidTo |
Hiermee haalt u de tijd op waarna het token niet meer geldig is. |
Methoden
| Name | Description |
|---|---|
| CanCreateKeyIdentifierClause<T>() |
Hiermee wordt een waarde opgehaald die aangeeft of dit beveiligingstoken de opgegeven sleutel-id kan maken. (Overgenomen van SecurityToken) |
| CreateKeyIdentifierClause<T>() |
Hiermee maakt u de opgegeven sleutel-id-component. (Overgenomen van SecurityToken) |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
Hiermee stelt u de SerializationInfo informatie in die nodig is om het sessiebeveiligingstoken te serialiseren. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MatchesKeyIdentifierClause(SecurityKeyIdentifierClause) |
Retourneert een waarde die aangeeft of de sleutel-id voor dit exemplaar kan worden omgezet in de opgegeven sleutel-id. (Overgenomen van SecurityToken) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ResolveKeyIdentifierClause(SecurityKeyIdentifierClause) |
Hiermee haalt u de sleutel voor de opgegeven sleutel-id-component op. (Overgenomen van SecurityToken) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |