SessionSecurityToken Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Definuje token zabezpečení, který obsahuje data přidružená k relaci.
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
- Dědičnost
- Atributy
- Implementuje
Poznámky
Token relace ukládá ClaimsPrincipal uživatele přidruženého k relaci a další parametry, které definují relaci, například čas zahájení a ukončení relace.
V pasivních scénářích WSFederationAuthenticationModule volání do SessionAuthenticationModule (SAM) z ověřovacího kanálu k vytvoření tokenu relace z objektu ClaimsPrincipal , který představuje ověřeného uživatele. Sam používá nakonfigurovaný SessionSecurityTokenHandler token k vytvoření tokenu a k jeho serializaci do souboru cookie (a k deserializaci tokenu z souboru cookie při následných požadavcích). Sam používá instanci své nakonfigurované CookieHandler třídy k zápisu souboru cookie zpět do odpovědi HTTP. Tento soubor cookie se pak vrátí klientovi a na následných požadavcích může klient soubor cookie prezentovat, místo aby se vrátil zpět ke zprostředkovateli identity, aby znovu získal token zabezpečení. Další informace o tom, jak relace fungují s WIF, najdete v tématu Správa relací WIF. Informace o používání relací ve scénářích webové farmy najdete v tématu WiF a webové farmy.
Token relace může fungovat buď v referenčním režimu, nebo ne. Pokud token relace nefunguje v referenčním režimu, celý token se serializuje do souboru cookie relace, který je uložen v klientovi. Serializovaný token relace může být poměrně velký, a proto soubor cookie uložený v klientovi může být také poměrně velký. V referenčním režimu se token místo serializace celého tokenu relace do souboru cookie ukládá do mezipaměti tokenu zabezpečení relace a do souboru cookie se ukládají pouze informace použité k vygenerování klíče potřebného k načtení tokenu z mezipaměti. To může výrazně zmenšit velikost souboru cookie. Mezipaměť tokenu relace je implementována třídou odvozenou od SessionSecurityTokenCache a klíč mezipaměti implementuje SessionSecurityTokenCacheKey třída. Vlastnosti ContextId a KeyGeneration se ve SessionSecurityTokenCacheKey třídě používají k vygenerování klíče mezipaměti.
Vlastnost IsReferenceMode určuje, jestli je token relace v referenčním režimu nebo ne.
Důležité
Pokud chcete pracovat v referenčním režimu, microsoft doporučuje poskytnout obslužnou rutinu WSFederationAuthenticationModule.SessionSecurityTokenCreated události v souboru global.asax.cs a nastavit IsReferenceMode vlastnost tokenu předaného ve SessionSecurityTokenCreatedEventArgs.SessionToken vlastnosti. Tím se zajistí, že token relace bude fungovat v referenčním režimu pro každý požadavek a bude upřednostňován před pouhým nastavením SessionAuthenticationModule.IsReferenceMode vlastnosti v modulu ověřování relace.
Třída poskytovaná SessionSecurityTokenHandler s WIF serializuje token relace jako WS-Secure Conversation <wsc:SecurityContextToken>
element.
Konstruktory
SessionSecurityToken(ClaimsPrincipal) |
Inicializuje novou instanci SessionSecurityToken třídy ze zadaného objektu zabezpečení. |
SessionSecurityToken(ClaimsPrincipal, String) |
Inicializuje novou instanci SessionSecurityToken třídy ze zadaného objektu zabezpečení a zaváděcího tokenu. |
SessionSecurityToken(ClaimsPrincipal, String, Nullable<DateTime>, Nullable<DateTime>) |
Inicializuje novou instanci SessionSecurityToken třídy ze zadaného objektu zabezpečení a zaváděcího tokenu a se zadaným časem spuštění a časem vypršení platnosti. |
SessionSecurityToken(ClaimsPrincipal, String, String, Nullable<DateTime>, Nullable<DateTime>) |
Inicializuje novou instanci SessionSecurityToken třídy ze zadaného objektu zabezpečení a zaváděcího tokenu a se zadaným časem spuštění a časem vypršení platnosti. Nový token je vymezený na zadaný koncový bod. |
SessionSecurityToken(ClaimsPrincipal, TimeSpan) |
Inicializuje novou instanci SessionSecurityToken třídy ze zadaného objektu zabezpečení. Nový token je platný od UtcNow zadané životnosti. |
SessionSecurityToken(ClaimsPrincipal, UniqueId, String, String, DateTime, TimeSpan, SymmetricSecurityKey) |
Inicializuje novou instanci třídy pomocí zadaného objektu SessionSecurityToken zabezpečení, ID kontextu, kontextu, koncového bodu, platného časového razítka, životnosti a klíče. |
SessionSecurityToken(ClaimsPrincipal, UniqueId, String, String, Nullable<DateTime>, Nullable<DateTime>, SymmetricSecurityKey) |
Inicializuje novou instanci třídy pomocí zadaného objektu SessionSecurityToken zabezpečení, ID kontextu, kontextu, koncového bodu, času spuštění, času vypršení platnosti a klíče. |
SessionSecurityToken(ClaimsPrincipal, UniqueId, String, String, TimeSpan, SymmetricSecurityKey) |
Inicializuje novou instanci třídy pomocí zadaného objektu SessionSecurityToken zabezpečení, ID kontextu, kontextu, koncového bodu, životnosti a klíče. |
SessionSecurityToken(SerializationInfo, StreamingContext) |
Inicializuje novou instanci třídy SessionSecurityToken se serializovanými daty. |
Vlastnosti
ClaimsPrincipal |
Získá objekt deklarací identity přidružený k relaci. |
Context |
Získá hodnotu kontextu zadanou uživatelem. |
ContextId |
Získá identifikátor kontextu relace. |
EndpointId |
Získá ID koncového bodu, na který je tento token vymezen. |
Id |
Získá jedinečný identifikátor tohoto tokenu. |
IsPersistent |
Získá nebo nastaví hodnotu, která označuje, zda soubor cookie reprezentovaný tímto tokenem je trvalý. |
IsReferenceMode |
Získá nebo nastaví hodnotu, která označuje, zda token zabezpečení relace funguje v referenčním režimu. |
KeyEffectiveTime |
Získá čas, od kterého je klíč v tomto tokenu platný. |
KeyExpirationTime |
Získá čas okamžitě, po jehož uplynutí klíč v tomto tokenu již není platný. |
KeyGeneration |
Získá identifikátor pro generování klíče v tomto tokenu. |
SecureConversationVersion |
Získá identifikátor URI, který identifikuje verzi WS-Secure konverzace, která se používá k serializaci tohoto tokenu zabezpečení relace. |
SecurityKeys |
Získá klíče přidružené k této relaci. Obvykle se jedná o jeden klíč. |
ValidFrom |
Získá čas, od kterého je token platný. |
ValidTo |
Získá čas okamžitě, po jehož uplynutí token již není platný. |
Metody
CanCreateKeyIdentifierClause<T>() |
Získá hodnotu, která označuje, zda tento token zabezpečení je schopen vytvořit identifikátor zadaného klíče. (Zděděno od SecurityToken) |
CreateKeyIdentifierClause<T>() |
Vytvoří klauzuli identifikátoru zadaného klíče. (Zděděno od SecurityToken) |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetObjectData(SerializationInfo, StreamingContext) |
SerializationInfo Nastaví s informacemi potřebnými k serializaci tokenu zabezpečení relace. |
GetType() |
Získá aktuální Type instanci. (Zděděno od Object) |
MatchesKeyIdentifierClause(SecurityKeyIdentifierClause) |
Vrátí hodnotu, která označuje, zda identifikátor klíče pro tuto instanci lze přeložit na zadaný identifikátor klíče. (Zděděno od SecurityToken) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
ResolveKeyIdentifierClause(SecurityKeyIdentifierClause) |
Získá klíč pro zadaný klíč identifikátor klauzule. (Zděděno od SecurityToken) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |