MachineKeySessionSecurityTokenHandler Klasse

Definition

Prozesssitzungstoken mithilfe der Signierung und der Verschlüsselungsschlüssel, die im ASP.NET <machineKey> Element in einer Konfigurationsdatei angegeben sind.

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
Vererbung
MachineKeySessionSecurityTokenHandler

Beispiele

Im folgenden XML-Code wird gezeigt, wie das ASP.NET <machineKey> -Element in der Konfiguration verwendet wird, um Signatur- und Verschlüsselungsschlüssel explizit anzugeben. Das <machineKey> -Element wird unter dem <system.web> -Element in einer Konfigurationsdatei angegeben.

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

Das folgende XML zeigt das Hinzufügen der MachineKeySessionSecurityTokenHandler zu einer Auflistung von Tokenhandler. Der Standardwert SessionSecurityTokenHandler wird zuerst aus der Auflistung entfernt. Tokenhandler werden unter dem < > securityTokenHandlers-Element konfiguriert.

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

Hinweise

Standardmäßig verwendet die SessionSecurityTokenHandler -Klasse die ProtectedDataCookieTransform -Klasse, die die Datenschutz-API (Data Protection API, DPAPI) verwendet, um das Sitzungstoken zu schützen. Die DPAPI bietet Schutz mithilfe der Anmeldeinformationen für Benutzer oder Computer und speichert die Schlüsseldaten im Benutzerprofil. Dies bedeutet, dass ein Sitzungstoken, das auf einem Computer signiert und verschlüsselt ist, nicht auf einem anderen Computer überprüft oder entschlüsselt werden kann.

Im Gegensatz dazu verwendet die MachineKeySessionSecurityTokenHandler -Klasse die MachineKeyTransform -Klasse, die die Sitzungscookiedaten mithilfe des kryptografischen Materials schützt, das im <machineKey> -Element in der Konfigurationsdatei angegeben ist. Dies bedeutet, dass dieselben Schlüssel (und Sitzungstoken) auf mehreren Computern verwendet werden können. Dies ist besonders wichtig, wenn eine Anwendung in einer Webfarm bereitgestellt wird. Weitere Informationen zum Verwenden von Windows Identity Foundation zum Schützen von Anwendungen, die in einer Webfarm bereitgestellt werden, finden Sie unter WIF und Webfarmen.

Konfigurieren Sie die Anwendung für die Verwendung der MachineKeySessionSecurityTokenHandler, indem Sie sie zur Auflistung der Tokenhandler hinzufügen. Entfernen Sie zuerst die SessionSecurityTokenHandler (oder alle aus der SessionSecurityTokenHandler-Klasse abgeleiteten Handler) aus der Auflistung der Tokenhandler, wenn ein solcher Handler vorhanden ist. Dies liegt daran, dass von abgeleitet wird MachineKeySessionSecurityTokenHandler SessionSecurityTokenHandler und eine Tokenhandlerauflistung nicht mehrere Handler eines bestimmten Typs enthalten kann.

Konstruktoren

MachineKeySessionSecurityTokenHandler()

Initialisiert eine neue Instanz der MachineKeySessionSecurityTokenHandler-Klasse.

MachineKeySessionSecurityTokenHandler(TimeSpan)

Initialisiert eine neue Instanz der MachineKeySessionSecurityTokenHandler-Klasse, die über das angegebenen Standardtokenlebendauer.

Eigenschaften

CanValidateToken

Ruft einen Wert ab, der angibt, ob der Handler die Validierung von Token des Typs SessionSecurityToken unterstützt.

(Geerbt von SessionSecurityTokenHandler)
CanWriteToken

Ruft einen Wert ab, der angibt, ob dieser Handler Token des Typs SessionSecurityToken schreiben kann.

(Geerbt von SessionSecurityTokenHandler)
Configuration

Ruft das SecurityTokenHandlerConfiguration-Objekt ab, das die Konfiguration für die aktuelle Instanz bereitstellt, oder legt dieses fest.

(Geerbt von SecurityTokenHandler)
ContainingCollection

Ruft die Token Handler-Sammlung ab, die die aktuelle Instanz beinhaltet.

(Geerbt von SecurityTokenHandler)
CookieElementName

Ruft den Namen für das Cookie-Element ab.

(Geerbt von SessionSecurityTokenHandler)
CookieNamespace

Ruft den Namespace für das Cookie-Element ab.

(Geerbt von SessionSecurityTokenHandler)
TokenLifetime

Übernimmt oder bestimmt die Tokenlebenszeit.

(Geerbt von SessionSecurityTokenHandler)
TokenType

Ruft den Tokentyp ab, den dieser Handler verarbeitet.

(Geerbt von SessionSecurityTokenHandler)
Transforms

Ruft Transformationen ab, die auf das Cookie angewendet wird.

(Geerbt von SessionSecurityTokenHandler)

Methoden

ApplyTransforms(Byte[], Boolean)

Wendet die von der Transforms-Eigenschaft angegebene Transformation auf das angegebene Cookie an, um es entweder zu codieren oder zu decodieren.

(Geerbt von SessionSecurityTokenHandler)
CanReadKeyIdentifierClause(XmlReader)

Gibt einen Wert zurück, der angibt, ob das XML-Element, auf das aus dem angegebenen XML-Reader verwiesen wird, eine Schlüsselbezeichnerklausel ist, die von dieser Instanz deserialisiert werden kann.

(Geerbt von SecurityTokenHandler)
CanReadToken(String)

Gibt einen Wert zurück, der angibt, ob die angegebene Zeichenfolge als Token des Typs deserialisiert werden kann, der von dieser Instanz verarbeitet wird.

(Geerbt von SecurityTokenHandler)
CanReadToken(XmlReader)

Gibt einen Wert zurück, der angibt, ob der Reader auf einem <wsc:SecurityContextToken>-Element positioniert ist.

(Geerbt von SessionSecurityTokenHandler)
CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause)

Gibt einen Wert zurück, der angibt, ob die angegebene Schlüsselbezeichnerklausel von dieser Instanz serialisiert werden kann.

(Geerbt von SecurityTokenHandler)
CreateSecurityTokenReference(SecurityToken, Boolean)

Erstellt bei Überschreibung in einer abgeleiteten Klasse den Sicherheitstokenverweis für die von dieser Klasse verarbeiteten Token. Diese Methode wird in der Regel von einem Sicherheitstokendienst (STS) aufgerufen.

(Geerbt von SecurityTokenHandler)
CreateSessionSecurityToken(ClaimsPrincipal, String, String, DateTime, DateTime)

Erstellt ein SessionSecurityToken auf der Grundlage des angegebenen Anspruchsprinzipals und dem Zeitraum, während dessen das Token gültig ist.

(Geerbt von SessionSecurityTokenHandler)
CreateToken(SecurityTokenDescriptor)

Erstellt ein Sicherheitstoken auf Grundlage des angegebenen Token-Deskriptors.

(Geerbt von SessionSecurityTokenHandler)
DetectReplayedToken(SecurityToken)

Löst beim Überschreiben in einer abgeleiteten Klasse eine Ausnahme aus, wenn das angegebene Token als wiedergegeben erkannt wird.

(Geerbt von SecurityTokenHandler)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetTokenTypeIdentifiers()

Ruft die Tokentyp-URIs für die Tokentypen ab, die von diesem Handler verarbeitet werden können.

(Geerbt von SessionSecurityTokenHandler)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
LoadCustomConfiguration(XmlNodeList)

Lädt eine benutzerdefinierte Konfiguration aus XML.

(Geerbt von SessionSecurityTokenHandler)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ReadKeyIdentifierClause(XmlReader)

Deserialisiert bei Überschreibung in einer abgeleiteten Klasse das XML, auf das durch den angegebenen XML-Reader verwiesen wird, in eine Schlüsselbezeichnerklausel, die auf ein Token verweist, das von der abgeleiteten Klasse verarbeitet wird.

(Geerbt von SecurityTokenHandler)
ReadToken(Byte[], SecurityTokenResolver)

Liest SessionSecurityToken aus einem Bytestream unter Verwendung des angegebenen Tokenresolvers.

(Geerbt von SessionSecurityTokenHandler)
ReadToken(String)

Deserialisiert bei Überschreibung in einer abgeleiteten Klasse die angegebene Zeichenfolge in ein Token des Typs, der von der abgeleiteten Klasse verarbeitet wird.

(Geerbt von SecurityTokenHandler)
ReadToken(XmlReader)

Liest das SessionSecurityToken-mithilfe des angegebenen XML-Readers.

(Geerbt von SessionSecurityTokenHandler)
ReadToken(XmlReader, SecurityTokenResolver)

Liest das SessionSecurityToken mithilfe des angegebenen XML-Readers und des Tokenresolvers.

(Geerbt von SessionSecurityTokenHandler)
SetTransforms(IEnumerable<CookieTransform>)

Legt Transformationen fest, die für Cookies angewendet werden.

(Geerbt von SessionSecurityTokenHandler)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
TraceTokenValidationFailure(SecurityToken, String)

Verfolgt das Fehlerereignis während der Validierung von Sicherheitstoken, wenn die Ablaufverfolgung aktiviert ist.

(Geerbt von SecurityTokenHandler)
TraceTokenValidationSuccess(SecurityToken)

Verfolgt die erfolgreiche Validierung des Sicherheitstokenereignisses, wenn die Ablaufverfolgung aktiviert ist.

(Geerbt von SecurityTokenHandler)
ValidateSession(SessionSecurityToken)

Bestimmt, ob die Sitzung, die dem angegebenen Token zugeordnet ist, weiterhin gültig ist. Gültigkeit wird bestimmt, indem die ValidFrom und ValidTo-Eigenschaften des angegebenen Token überprüft. Eine Ausnahme wird ausgelöst, wenn die Sitzung nicht mehr gültig ist.

(Geerbt von SessionSecurityTokenHandler)
ValidateToken(SecurityToken)

Überprüft das angegebene Token und gibt seine Ansprüche zurück.

(Geerbt von SessionSecurityTokenHandler)
ValidateToken(SessionSecurityToken, String)

Überprüft das angegebene Sitzungstoken und gibt seine Forderungen zurück.

(Geerbt von SessionSecurityTokenHandler)
WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause)

Serialisiert beim Überschreiben in einer abgeleiteten Klasse die angegebene Schlüsselbezeichnerklausel in XML. Die Schlüsselbezeichnerklausel muss einen Typ besitzen, der von der abgeleiteten Klasse unterstützt wird.

(Geerbt von SecurityTokenHandler)
WriteToken(SecurityToken)

Serialisiert bei Überschreibung in einer abgeleiteten Klasse das angegebene Sicherheitstoken in eine Zeichenfolge. Das Token muss von dem von der abgeleiteten Klasse verarbeiteten Typ sein.

(Geerbt von SecurityTokenHandler)
WriteToken(SessionSecurityToken)

Serialisiert das angegebene Token in ein Bytearray.

(Geerbt von SessionSecurityTokenHandler)
WriteToken(XmlWriter, SecurityToken)

Serialisiert den angegebenen Token mit dem angegebenen XML-Writer.

(Geerbt von SessionSecurityTokenHandler)

Gilt für

Siehe auch