MachineKeySessionSecurityTokenHandler Třída

Definice

Zpracovává tokeny relace pomocí podpisových a šifrovacích klíčů zadaných v elementu ASP.NET <machineKey> v konfiguračním souboru.

public ref class MachineKeySessionSecurityTokenHandler : System::IdentityModel::Tokens::SessionSecurityTokenHandler
public class MachineKeySessionSecurityTokenHandler : System.IdentityModel.Tokens.SessionSecurityTokenHandler
type MachineKeySessionSecurityTokenHandler = class
    inherit SessionSecurityTokenHandler
Public Class MachineKeySessionSecurityTokenHandler
Inherits SessionSecurityTokenHandler
Dědičnost
MachineKeySessionSecurityTokenHandler

Příklady

Následující kód XML ukazuje, jak pomocí elementu ASP.NET <machineKey> v konfiguraci explicitně zadat podpisové a šifrovací klíče. Prvek <machineKey> je určen pod <system.web> element v konfiguračním souboru.

<machineKey compatibilityMode="Framework45" decryptionKey="CC510D … 8925E6" validationKey="BEAC8 … 6A4B1DE" />  

Následující KÓD XML ukazuje, jak přidat MachineKeySessionSecurityTokenHandler do kolekce obslužné rutiny tokenu. Výchozí hodnota SessionSecurityTokenHandler je nejprve odebrána z kolekce. Obslužné rutiny tokenů jsou nakonfigurovány v elementu< securityTokenHandlers>.

<securityTokenHandlers>  
  <remove type="System.IdentityModel.Tokens.SessionSecurityTokenHandler, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />  
  <add type="System.IdentityModel.Services.Tokens.MachineKeySessionSecurityTokenHandler, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />  
</securityTokenHandlers>  

Poznámky

Ve výchozím nastavení třída SessionSecurityTokenHandler používá ProtectedDataCookieTransform třídu, která k ochraně tokenu relace používá rozhraní DATA Protection API (DPAPI). Rozhraní DPAPI poskytuje ochranu pomocí přihlašovacích údajů uživatele nebo počítače a ukládá klíčová data v profilu uživatele. To znamená, že token relace podepsaný a šifrovaný na jednom počítači nelze ověřit ani dešifrovat v jiném počítači.

Naproti tomu MachineKeySessionSecurityTokenHandler třída používá MachineKeyTransform třídu, která chrání data souboru cookie relace pomocí kryptografického materiálu určeného <machineKey> v elementu v konfiguračním souboru. To znamená, že stejné klíče (a tokeny relací) je možné použít v několika počítačích. To je zvlášť důležité, když je aplikace nasazená ve webové farmě. Další informace o tom, jak pomocí služby Windows Identity Foundation chránit aplikace nasazené ve webové farmě, najdete v tématu WIF a webové farmy.

Nakonfigurujte aplikaci tak, aby ji používala MachineKeySessionSecurityTokenHandler přidáním do kolekce obslužných rutin tokenů. Pokud je taková obslužná rutina přítomna, musíte nejprve odebrat SessionSecurityTokenHandler (nebo jakoukoli obslužnou rutinu odvozenou z SessionSecurityTokenHandler třídy) z kolekce obslužné rutiny tokenu. Důvodem je to, že MachineKeySessionSecurityTokenHandler odvozuje kolekci SessionSecurityTokenHandler obslužných rutin tokenů a nemůže obsahovat více obslužných rutin daného typu.

Konstruktory

Name Description
MachineKeySessionSecurityTokenHandler()

Inicializuje novou instanci MachineKeySessionSecurityTokenHandler třídy.

MachineKeySessionSecurityTokenHandler(TimeSpan)

Inicializuje novou instanci MachineKeySessionSecurityTokenHandler třídy, která má zadanou výchozí životnost tokenu.

Vlastnosti

Name Description
CanValidateToken

Získá hodnotu, která označuje, zda tato obslužná rutina podporuje ověřování tokenů typu SessionSecurityToken.

(Zděděno od SessionSecurityTokenHandler)
CanWriteToken

Získá hodnotu, která označuje, zda tato obslužná rutina může zapisovat tokeny typu SessionSecurityToken.

(Zděděno od SessionSecurityTokenHandler)
Configuration

Získá nebo nastaví SecurityTokenHandlerConfiguration objekt, který poskytuje konfiguraci pro aktuální instanci.

(Zděděno od SecurityTokenHandler)
ContainingCollection

Získá kolekci obslužné rutiny tokenu, která obsahuje aktuální instanci.

(Zděděno od SecurityTokenHandler)
CookieElementName

Získá název elementu cookie.

(Zděděno od SessionSecurityTokenHandler)
CookieNamespace

Získá obor názvů pro element cookie.

(Zděděno od SessionSecurityTokenHandler)
TokenLifetime

Získá nebo nastaví životnost tokenu.

(Zděděno od SessionSecurityTokenHandler)
TokenType

Získá typ tokenů, které tato obslužná rutina zpracovává.

(Zděděno od SessionSecurityTokenHandler)
Transforms

Získá transformace, které se použijí na soubor cookie.

(Zděděno od SessionSecurityTokenHandler)

Metody

Name Description
ApplyTransforms(Byte[], Boolean)

Použije transformace určené Transforms vlastností pro kódování nebo dekódování zadaného souboru cookie.

(Zděděno od SessionSecurityTokenHandler)
CanReadKeyIdentifierClause(XmlReader)

Vrátí hodnotu, která určuje, zda xml element odkazovaný zadaným čtečkou XML je klauzule identifikátor klíče, která může být deserializována touto instancí.

(Zděděno od SecurityTokenHandler)
CanReadToken(String)

Vrátí hodnotu, která určuje, zda zadaný řetězec lze deserializovat jako token typu zpracovávaného touto instancí.

(Zděděno od SecurityTokenHandler)
CanReadToken(XmlReader)

Vrátí hodnotu, která určuje, zda je čtenář umístěn v <wsc:SecurityContextToken> prvku.

(Zděděno od SessionSecurityTokenHandler)
CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause)

Vrátí hodnotu, která určuje, zda zadaná klauzule identifikátoru klíče může být serializována touto instancí.

(Zděděno od SecurityTokenHandler)
CreateSecurityTokenReference(SecurityToken, Boolean)

Při přepsání v odvozené třídě vytvoří odkaz tokenu zabezpečení pro tokeny zpracovávané danou třídou. Tato metoda se obvykle volá službou tokenů zabezpečení (STS).

(Zděděno od SecurityTokenHandler)
CreateSessionSecurityToken(ClaimsPrincipal, String, String, DateTime, DateTime)

SessionSecurityToken Vytvoří na základě zadaného objektu zabezpečení deklarací identity a časového rozsahu, během kterého je token platný.

(Zděděno od SessionSecurityTokenHandler)
CreateToken(SecurityTokenDescriptor)

Vytvoří token zabezpečení na základě zadaného popisovače tokenu.

(Zděděno od SessionSecurityTokenHandler)
DetectReplayedToken(SecurityToken)

Při přepsání v odvozené třídě vyvolá výjimku, pokud je zadaný token zjištěn jako přehrání.

(Zděděno od SecurityTokenHandler)
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)
GetTokenTypeIdentifiers()

Získá identifikátory URI typu tokenu pro typy tokenů, které lze zpracovat touto obslužnou rutinou.

(Zděděno od SessionSecurityTokenHandler)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
LoadCustomConfiguration(XmlNodeList)

Načte vlastní konfiguraci z XML.

(Zděděno od SessionSecurityTokenHandler)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
ReadKeyIdentifierClause(XmlReader)

Při přepsání v odvozené třídě deserializuje XML odkazovaný zadaným čtenářem XML na klauzuli identifikátoru klíče, která odkazuje na token zpracovaný odvozenou třídou.

(Zděděno od SecurityTokenHandler)
ReadToken(Byte[], SecurityTokenResolver)

SessionSecurityToken Načte ze streamu bajtů pomocí zadaného překladače tokenů.

(Zděděno od SessionSecurityTokenHandler)
ReadToken(String)

Při přepsání v odvozené třídě deserializuje zadaný řetězec na token typu zpracovaného odvozenou třídou.

(Zděděno od SecurityTokenHandler)
ReadToken(XmlReader, SecurityTokenResolver)

Přečte pomocí SessionSecurityToken zadané čtečky XML a překladače tokenů.

(Zděděno od SessionSecurityTokenHandler)
ReadToken(XmlReader)

Přečte pomocí SessionSecurityToken zadané čtečky XML.

(Zděděno od SessionSecurityTokenHandler)
SetTransforms(IEnumerable<CookieTransform>)

Nastaví transformace, které se použijí na soubory cookie.

(Zděděno od SessionSecurityTokenHandler)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
TraceTokenValidationFailure(SecurityToken, String)

Trasuje událost selhání během ověřování tokenů zabezpečení při povolení trasování.

(Zděděno od SecurityTokenHandler)
TraceTokenValidationSuccess(SecurityToken)

Trasuje úspěšné ověření události tokenů zabezpečení při povolení trasování.

(Zděděno od SecurityTokenHandler)
ValidateSession(SessionSecurityToken)

Určuje, zda relace přidružená k zadanému tokenu je stále platná. Platnost je určena kontrolou ValidFrom a ValidTo vlastnostmi zadaného tokenu. Pokud relace již není platná, vyvolá se výjimka.

(Zděděno od SessionSecurityTokenHandler)
ValidateToken(SecurityToken)

Ověří zadaný token a vrátí jeho deklarace identity.

(Zděděno od SessionSecurityTokenHandler)
ValidateToken(SessionSecurityToken, String)

Ověří zadaný token relace a vrátí jeho deklarace identity.

(Zděděno od SessionSecurityTokenHandler)
WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause)

Při přepsání v odvozené třídě serializuje zadanou klauzuli identifikátoru klíče do XML. Klauzule identifikátoru klíče musí být typu podporovaného odvozenou třídou.

(Zděděno od SecurityTokenHandler)
WriteToken(SecurityToken)

Při přepsání v odvozené třídě serializuje zadaný token zabezpečení na řetězec. Token musí být typu zpracovávaného odvozenou třídou.

(Zděděno od SecurityTokenHandler)
WriteToken(SessionSecurityToken)

Serializuje zadaný token do bajtového pole.

(Zděděno od SessionSecurityTokenHandler)
WriteToken(XmlWriter, SecurityToken)

Serializuje zadaný token pomocí zadaného zapisovače XML.

(Zděděno od SessionSecurityTokenHandler)

Platí pro

Viz také