Share via


MachineKeySessionSecurityTokenHandler クラス

定義

構成ファイルの ASP.NET <machineKey> 要素で指定された署名および暗号化キーを使用してセッション トークンを処理します。

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
継承
MachineKeySessionSecurityTokenHandler

次の XML は、構成で ASP.NET <machineKey> 要素を使用して、署名キーと暗号化キーを明示的に指定する方法を示しています。 要素は <machineKey> 、構成ファイルの <system.web> 要素の下に指定されます。

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

次の XML は、MachineKeySessionSecurityTokenHandler をトークン ハンドラー コレクションに追加する方法を示しています。 既定値 SessionSecurityTokenHandler は、最初にコレクションから削除されます。 トークン ハンドラーは、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>  

注釈

既定では、 クラスは SessionSecurityTokenHandler 、Data Protection API (DPAPI) を使用してセッション トークンを保護する クラスを使用 ProtectedDataCookieTransform します。 DPAPI は、ユーザーまたはコンピューターの資格情報を使用して保護を実装し、ユーザー プロファイルにキー データを格納します。 つまり、あるコンピューターで署名および暗号化されたセッション トークンを、別のコンピューターで検証または暗号化解除することはできません。

これに対し、 クラスは MachineKeySessionSecurityTokenHandler クラスを MachineKeyTransform 使用します。このクラスは、構成ファイルの 要素で指定された暗号化マテリアルを <machineKey> 使用してセッション Cookie データを保護します。 つまり、同じキー (およびセッション トークン) を複数のコンピューターで使用できます。 これは、アプリケーションが Web ファームにデプロイされている場合に特に重要です。 Windows Identity Foundation を使用して Web ファームに展開されているアプリケーションを保護する方法の詳細については、「 WIF および Web ファーム」を参照してください。

トークン ハンドラー コレクションに追加することで、MachineKeySessionSecurityTokenHandler を使用するようにアプリケーションを構成します。 このようなハンドラーが存在する場合は、まず SessionSecurityTokenHandler (または SessionSecurityTokenHandler クラスから派生した任意のハンドラー) をトークン ハンドラー コレクションから削除する必要があります。 これは、 からSessionSecurityTokenHandler派生し、トークン ハンドラー コレクションに特定の型の複数のハンドラーを含めることができないためですMachineKeySessionSecurityTokenHandler

コンストラクター

MachineKeySessionSecurityTokenHandler()

MachineKeySessionSecurityTokenHandler クラスの新しいインスタンスを初期化します。

MachineKeySessionSecurityTokenHandler(TimeSpan)

指定した既定のトークン有効期間を持つ MachineKeySessionSecurityTokenHandler クラスの新しいインスタンスを初期化します。

プロパティ

CanValidateToken

このハンドラーが、種類が SessionSecurityToken であるトークンの検証をサポートするかどうかを示す値を取得します。

(継承元 SessionSecurityTokenHandler)
CanWriteToken

このハンドラーが、種類が SessionSecurityToken であるトークンを書き込むできるかどうかを示す値を取得します。

(継承元 SessionSecurityTokenHandler)
Configuration

現在のインスタンスの構成を提供する SecurityTokenHandlerConfiguration オブジェクトを取得または設定します。

(継承元 SecurityTokenHandler)
ContainingCollection

現在のインスタンスを含むトークン ハンドラー コレクションを取得します。

(継承元 SecurityTokenHandler)
CookieElementName

クッキー要素の名前を取得します。

(継承元 SessionSecurityTokenHandler)
CookieNamespace

クッキー要素の名前空間を取得します。

(継承元 SessionSecurityTokenHandler)
TokenLifetime

トークンの有効期間を取得または設定します。

(継承元 SessionSecurityTokenHandler)
TokenType

このハンドラーが処理するトークンの型を取得します。

(継承元 SessionSecurityTokenHandler)
Transforms

クッキーに適用される変換を取得します。

(継承元 SessionSecurityTokenHandler)

メソッド

ApplyTransforms(Byte[], Boolean)

指定したクッキーに対して Transforms プロパティに指定された変換を適用して、クッキーをエンコードまたはデコードします。

(継承元 SessionSecurityTokenHandler)
CanReadKeyIdentifierClause(XmlReader)

指定した XML リーダーによって参照される XML 要素が、このインスタンスによって逆シリアル化できるキー識別子節であるかどうかを示す値を返します。

(継承元 SecurityTokenHandler)
CanReadToken(String)

指定した文字列が、このインスタンスが処理する型のトークンとして逆シリアル化できるかどうかを示す値を返します。

(継承元 SecurityTokenHandler)
CanReadToken(XmlReader)

リーダーの位置が <wsc:SecurityContextToken> 要素であるかどうかを示す値を返します。

(継承元 SessionSecurityTokenHandler)
CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause)

指定したキー識別子句をこのインスタンスでシリアル化できるかどうかを示す値を返します。

(継承元 SecurityTokenHandler)
CreateSecurityTokenReference(SecurityToken, Boolean)

派生クラスでオーバーライドされると、そのクラスによって処理されるトークンのセキュリティ トークン参照を作成します。 このメソッドは、通常、セキュリティ トークン サービス (STS) によって呼び出されます。

(継承元 SecurityTokenHandler)
CreateSessionSecurityToken(ClaimsPrincipal, String, String, DateTime, DateTime)

指定したクレーム プリンシパルとトークンの有効期間に基づいて SessionSecurityToken を作成します。

(継承元 SessionSecurityTokenHandler)
CreateToken(SecurityTokenDescriptor)

指定したトークン記述子に基づいてセキュリティ トークンを作成します。

(継承元 SessionSecurityTokenHandler)
DetectReplayedToken(SecurityToken)

派生クラスでオーバーライドされると、指定したトークンが再生中に検出された場合に例外をスローします。

(継承元 SecurityTokenHandler)
Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetTokenTypeIdentifiers()

このハンドラーで処理できるトークンの種類の、トークンの種類 URI を取得します。

(継承元 SessionSecurityTokenHandler)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
LoadCustomConfiguration(XmlNodeList)

カスタム構成を XML から読み込みます。

(継承元 SessionSecurityTokenHandler)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ReadKeyIdentifierClause(XmlReader)

派生クラスでオーバーライドされると、指定された XML リーダーによって参照される XML を、派生クラスによって処理されるトークンを参照するキー識別句に逆シリアル化します。

(継承元 SecurityTokenHandler)
ReadToken(Byte[], SecurityTokenResolver)

指定されたトークン リゾルバーを使用して、バイトのストリームから SessionSecurityToken を読み取ります。

(継承元 SessionSecurityTokenHandler)
ReadToken(String)

派生クラスでオーバーライドされると、派生クラスによって処理される型のトークンに指定の文字列を逆シリアル化します。

(継承元 SecurityTokenHandler)
ReadToken(XmlReader)

指定した XML リーダーを使用して SessionSecurityToken を読み取ります。

(継承元 SessionSecurityTokenHandler)
ReadToken(XmlReader, SecurityTokenResolver)

指定した XML リーダーおよびトークン リゾルバーを使用して SessionSecurityToken を読み取ります。

(継承元 SessionSecurityTokenHandler)
SetTransforms(IEnumerable<CookieTransform>)

クッキーに適用される変換を設定します。

(継承元 SessionSecurityTokenHandler)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
TraceTokenValidationFailure(SecurityToken, String)

トレースが有効であるとき、セキュリティ トークンの検証中、障害イベントをトレースします。

(継承元 SecurityTokenHandler)
TraceTokenValidationSuccess(SecurityToken)

トレースが有効であるとき、セキュリティ トークン イベントの検証の成功をトレースします。

(継承元 SecurityTokenHandler)
ValidateSession(SessionSecurityToken)

指定したトークンに関連付けられたセッションがまだ有効かどうかを判断します。 有効性は、指定されたトークンの ValidFromValidTo プロパティをチェックすることによって判断されます。 セッションが無効になった場合は、例外がスローされます。

(継承元 SessionSecurityTokenHandler)
ValidateToken(SecurityToken)

指定されたトークンを検証し、その要求を返します。

(継承元 SessionSecurityTokenHandler)
ValidateToken(SessionSecurityToken, String)

指定されたセッション トークンを検証し、クレームを返します。

(継承元 SessionSecurityTokenHandler)
WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause)

派生クラスでオーバーライドされると、指定されたキー識別句を XML にシリアル化します。 キー識別句は、派生クラスでサポートされているタイプにする必要があります。

(継承元 SecurityTokenHandler)
WriteToken(SecurityToken)

派生クラスでオーバーライドされると、指定されたセキュリティ トークンを文字列にシリアル化します。 トークンは、派生クラスによって処理される種類である必要があります。

(継承元 SecurityTokenHandler)
WriteToken(SessionSecurityToken)

指定したトークンをバイト配列にシリアル化します。

(継承元 SessionSecurityTokenHandler)
WriteToken(XmlWriter, SecurityToken)

指定した XML ライターを使用して、指定したトークンをシリアル化します。

(継承元 SessionSecurityTokenHandler)

適用対象

こちらもご覧ください