Sdílet prostřednictvím


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. Element <machineKey> je zadán v elementu <system.web> 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 objekt do kolekce obslužné rutiny tokenu. Výchozí hodnota SessionSecurityTokenHandler se nejprve odebere z kolekce. Obslužné rutiny tokenů jsou nakonfigurované 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í SessionSecurityTokenHandler třída používá ProtectedDataCookieTransform třídu, která k ochraně tokenu relace používá rozhraní DPAPI (Data Protection API). Rozhraní DPAPI poskytuje ochranu pomocí přihlašovacích údajů uživatele nebo počítače a ukládá klíčová data do profilu uživatele. To znamená, že token relace podepsaný a šifrovaný na jednom počítači nelze ověřit ani dešifrovat na 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 zadaného v elementu <machineKey> v konfiguračním souboru. To znamená, že stejné klíče (a tokeny relace) je možné používat na více 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 , a to tak, že ji přidáte do kolekce obslužné rutiny tokenu. Musíte nejprve odebrat SessionSecurityTokenHandler (nebo jakoukoli obslužnou rutinu SessionSecurityTokenHandler odvozenou z třídy) z kolekce obslužné rutiny tokenu, pokud je taková obslužná rutina k dispozici. Důvodem je to, že MachineKeySessionSecurityTokenHandler kolekce a kolekce obslužné rutiny tokenu SessionSecurityTokenHandler nemůže obsahovat více obslužných rutin libovolného typu.

Konstruktory

MachineKeySessionSecurityTokenHandler()

Inicializuje novou instanci MachineKeySessionSecurityTokenHandler třídy.

MachineKeySessionSecurityTokenHandler(TimeSpan)

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

Vlastnosti

CanValidateToken

Získá hodnotu, která označuje, zda tato obslužná rutina podporuje ověření 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

ApplyTransforms(Byte[], Boolean)

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

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

Vrátí hodnotu, která označuje, zda xml element odkazovaný zadaný xml čtenář je key identifikátor klauzule, která může být deserializována touto instancí.

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

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

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

Vrátí hodnotu, která označuje, zda je čtečka umístěna v elementu <wsc:SecurityContextToken> .

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

Vrátí hodnotu, která označ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 na tokeny zabezpečení pro tokeny zpracovávané danou třídou. Tuto metodu obvykle volá služba tokenů zabezpečení (STS).

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

Vytvoří na SessionSecurityToken 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 zjištěn zadaný token jako přehrávané.

(Zděděno od SecurityTokenHandler)
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)
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á aktuální Type instanci.

(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 Objectsouboru .

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

Při přepsání v odvozené třídě deserializuje XML odkazované zadaným xml čtenářem 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)

Čte pomocí zadané čtečky SessionSecurityToken XML.

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

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

(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í, pokud je povolené trasování.

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

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

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

Určuje, zda je relace přidružená k zadanému tokenu stále platná. Platnost se určuje kontrolou ValidFrom vlastností a ValidTo zadaného tokenu. Pokud už relace 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 na 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 zpracovaného odvozenou třídou.

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

Serializuje zadaný token do pole bajtů.

(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é