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, který je přidružený k relaci, a také další parametry definující 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 vytvoří token relace z ClaimsPrincipal ověřeného uživatele. SAM používá nakonfigurovaný SessionSecurityTokenHandler k vytvoření tokenu a k jeho serializaci do souboru cookie (a k deserializaci tokenu ze 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 při následných požadavcích může klient předložit soubor cookie, nikoli provést zpáteční cestu zpět zprostředkovateli identity, aby znovu získal token zabezpečení. Další informace o tom, jak relace fungují s WIF, naleznete 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 uloženého v klientovi. Serializovaný token relace může být poměrně velký a soubor cookie uložený v klientovi může být také poměrně velký. V referenčním režimu se místo serializace celého tokenu relace do souboru cookie token uloží do mezipaměti tokenu zabezpečení relace a do souboru cookie se uloží 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ěť tokenů relace je implementována třídou odvozenou z SessionSecurityTokenCache a klíč mezipaměti je implementován SessionSecurityTokenCacheKey třídou. Vlastnosti ContextId a KeyGeneration vlastnosti se používají ve SessionSecurityTokenCacheKey třídě k vygenerování klíče mezipaměti.
Vlastnost IsReferenceMode určuje, zda je token relace v referenčním režimu, nebo ne.
Důležité
Pokud chcete pracovat v referenčním režimu, společnost Microsoft doporučuje poskytnout obslužnou rutinu události WSFederationAuthenticationModule.SessionSecurityTokenCreated v souboru global.asax.cs a nastavit IsReferenceMode vlastnost tokenu předaného ve SessionSecurityTokenCreatedEventArgs.SessionToken vlastnosti. Tím zajistíte, že token relace funguje v referenčním režimu pro každý požadavek a bude upřednostňovaný před pouhým nastavením SessionAuthenticationModule.IsReferenceMode vlastnosti v modulu ověřování relace.
Třída SessionSecurityTokenHandler poskytovaná wiF serializuje token relace jako WS-Secure Conversation <wsc:SecurityContextToken> element.
Konstruktory
| Name | Description |
|---|---|
| SessionSecurityToken(ClaimsPrincipal, String, Nullable<DateTime>, Nullable<DateTime>) |
Inicializuje novou instanci třídy ze zadaného instančního SessionSecurityToken objektu a bootstrap tokenu a se zadaným časem spuštění a vypršením platnosti. |
| SessionSecurityToken(ClaimsPrincipal, String, String, Nullable<DateTime>, Nullable<DateTime>) |
Inicializuje novou instanci třídy ze zadaného instančního SessionSecurityToken objektu a bootstrap tokenu a se zadaným časem spuštění a vypršením platnosti. Nový token je vymezen na zadaný koncový bod. |
| SessionSecurityToken(ClaimsPrincipal, String) |
Inicializuje novou instanci třídy ze zadaného objektu SessionSecurityToken zabezpečení a bootstrap tokenu. |
| SessionSecurityToken(ClaimsPrincipal, TimeSpan) |
Inicializuje novou instanci SessionSecurityToken třídy ze zadaného objektu zabezpečení. Nový token je platný od UtcNow zadané doby života. |
| 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, počátečního času, č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(ClaimsPrincipal) |
Inicializuje novou instanci SessionSecurityToken třídy ze zadaného objektu zabezpečení. |
| SessionSecurityToken(SerializationInfo, StreamingContext) |
Inicializuje novou instanci SessionSecurityToken třídy serializovanými daty. |
Vlastnosti
| Name | Description |
|---|---|
| ClaimsPrincipal |
Získá objekt zabezpečení deklarací identity přidružený k relaci. |
| Context |
Získá uživatelem zadanou kontextovou hodnotu. |
| 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, ze kterého je klíč v tomto tokenu platný. |
| KeyExpirationTime |
Získá čas, po kterém klíč v tomto tokenu již není platný. |
| KeyGeneration |
Získá identifikátor pro generování klíčů 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, ze kterého je token platný. |
| ValidTo |
Získá čas okamžitě po uplynutí platnosti tokenu. |
Metody
| Name | Description |
|---|---|
| CanCreateKeyIdentifierClause<T>() |
Získá hodnotu, která označuje, zda tento token zabezpečení je schopen vytvořit zadaný identifikátor klíče. (Zděděno od SecurityToken) |
| CreateKeyIdentifierClause<T>() |
Vytvoří zadanou klauzuli identifikátoru klíče. (Zděděno od SecurityToken) |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetObjectData(SerializationInfo, StreamingContext) |
SerializationInfo Nastaví informace potřebné k serializaci tokenu zabezpečení relace. |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MatchesKeyIdentifierClause(SecurityKeyIdentifierClause) |
Vrátí hodnotu, která určuje, zda je možné identifikátor klíče pro tuto instanci přeložit na zadaný identifikátor klíče. (Zděděno od SecurityToken) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ResolveKeyIdentifierClause(SecurityKeyIdentifierClause) |
Získá klíč pro zadanou klauzuli identifikátoru klíče. (Zděděno od SecurityToken) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |