SecurityTokenHandler 클래스

정의

보안 토큰 처리기에 대한 추상 기본 클래스입니다.The abstract base class for security token handlers.

public ref class SecurityTokenHandler abstract : System::IdentityModel::Configuration::ICustomIdentityConfiguration
public abstract class SecurityTokenHandler : System.IdentityModel.Configuration.ICustomIdentityConfiguration
type SecurityTokenHandler = class
    interface ICustomIdentityConfiguration
Public MustInherit Class SecurityTokenHandler
Implements ICustomIdentityConfiguration
상속
SecurityTokenHandler
파생
구현

예제

모든 코드 예제는 SecurityTokenHandler 에서 항목을 가져옵니다는 Custom Token 샘플입니다.The code examples in all of the SecurityTokenHandler topics are taken from the Custom Token sample. 이 샘플의 간단한 웹 토큰 (SWT) 처리를 사용 하도록 설정 하는 사용자 지정 클래스를 제공 합니다.This sample provides custom classes that enable processing of Simple Web Tokens (SWT). 이 샘플 및 WIF 및 다운로드할 위치에 사용할 수 있는 다른 샘플에 대 한 정보를 참조 하세요 WIF 코드 샘플 인덱스합니다.For information about this sample and other samples available for WIF and where to download them, see WIF Code Sample Index. 다음 XML에는 SWT 토큰 처리기가 토큰 처리기 컬렉션에 추가 하는 방법을 보여 줍니다.The following XML shows how to add the SWT token handler to the token handlers collection.

<system.identityModel>  
  <identityConfiguration saveBootstrapContext="true">  
    <issuerTokenResolver type="SimpleWebToken.CustomIssuerTokenResolver, SimpleWebToken">  
      <AddAudienceKeyPair  symmetricKey="wAVkldQiFypTQ+kdNdGWCYCHRcee8XmXxOvgmak8vSY=" audience="http://localhost:19851/" />  
    </issuerTokenResolver>  
    <issuerNameRegistry type="RelyingParty.TrustedIssuerNameRegistry, RelyingParty"/>  
    <audienceUris>  
      <add value="http://localhost:19851/"/>  
    </audienceUris>  
    <securityTokenHandlers>  
      <add type="SimpleWebToken.SimpleWebTokenHandler, SimpleWebToken" />  
    </securityTokenHandlers>  
  </identityConfiguration>  
</system.identityModel>  

설명

SecurityTokenHandler 클래스는 모든 보안 토큰 처리기 파생 되는 기본 클래스입니다.The SecurityTokenHandler class is the base class from which all security token handlers derive. 보안 토큰 처리기는 담당 합니다.A security token handler is responsible for:

  • 보안 토큰 유효성 검사 (SecurityToken) 프로세스와 패키징으로 토큰에 클레임을 포함 하도록 설계 되었습니다 형식의 ClaimsIdentity 개체입니다.Validating security tokens (SecurityToken) of the type it is designed to process and packaging the claims contained in the token into a ClaimsIdentity object.

  • 직렬화 및 역직렬화 형식의 보안 토큰을 처리 하도록 설계 되었습니다.Serializing and deserializing security tokens of the type it is designed to process.

  • 직렬화 및 역직렬화 키 식별자 절 (SecurityKeyIdentifierClause)을 처리 하도록 설계 되었습니다 형식의 토큰을 참조 하는 <wsse:SecurityTokenReference> 요소입니다.Serializing and deserializing key identifier clauses (SecurityKeyIdentifierClause) that refer to tokens of the type it is designed to process to and from <wsse:SecurityTokenReference> elements.

  • 보안 토큰을 만들기는 SecurityTokenDescriptor 의 구현을 통해 전달 되는 개체는 SecurityTokenService 클래스.Creating security tokens from a SecurityTokenDescriptor object passed by implementations of the SecurityTokenService class.

  • 구현에 대 한 보안 토큰에서 키 식별자 절을 만드는 SecurityTokenService 클래스입니다.Creating key identifier clauses from a security token for implementations of the SecurityTokenService class.

Windows Identity Foundation (WIF)는 기본적으로 다음 보안 토큰 처리기를 제공합니다.Windows Identity Foundation (WIF) ships the following security token handlers out of the box:

이러한 클래스의 대부분 클래스는 토큰을 처리 하는 관련 된 기능을 구현 하는 추가 멤버를 노출 합니다.Most of these classes expose additional members that implement functionality that is specific to the processing of the tokens for which the class is designed. 대부분의 경우에서에서 직접 읽지 못하고 이러한 클래스 중 하나에서 파생 되는 것이 더 수는 SecurityTokenHandler 클래스입니다.In many cases it may be better to derive from one of these classes rather than directly from the SecurityTokenHandler class.

보안 토큰 처리기를 추가 하거나 지정 하 여 토큰 처리기 컬렉션에서 제거할 수는 <추가>합니다 <제거>, 또는 <지우기> 아래에 요소를 <securityTokenHandlers> 구성 파일의 요소입니다.A security token handler can be added or removed from a token handler collection by specifying the <add>, <remove>, or <clear> elements under the <securityTokenHandlers> element in a configuration file. SecurityTokenHandlerConfiguration 처리기 컬렉션에 대 한 구성 설정이 포함 된 개체를 통해 액세스할 수는 Configuration 속성 및 토큰 처리기의 구성원 인 처리기 컬렉션에서 액세스할 수 있습니다는 ContainingCollection 속성입니다.The SecurityTokenHandlerConfiguration object that contains the configuration settings for the handler collection can be accessed through the Configuration property and the handler collection that the token handler is a member of can be accessed from the ContainingCollection property. 재정의할 수 있습니다는 LoadCustomConfiguration 처리기는 모든 사용자 지정 구성 요소를 처리 하는 방법입니다.You can override the LoadCustomConfiguration method to process any custom configuration elements that your handler takes.

SecurityTokenHandler 클래스는 다른 여러 속성 및 메서드를 노출 합니다.The SecurityTokenHandler class exposes several other properties and methods. 구현 하도록 선택 하는 기능에 따라 이러한 멤버 중 일부나 전부를 재정의할 수 있습니다.Depending on the functionality that you choose to implement, you may override some or all of these members.

재정의 해야 합니다 TokenType 속성 및 GetTokenTypeIdentifiers 클래스는 보안 토큰의 형식에 대 한 정보를 사용 하 여 WIF 인프라를 제공 하는 메서드를 처리 하도록 설계 합니다.You must override the TokenType property and the GetTokenTypeIdentifiers method to provide the WIF infrastructure with information about the type of security token that your class is designed to process.

유효성 검사, serialization 및 deserialization 기능 속성 또는 처리기 메서드 또는 기능을 구현 하는 메서드를 사용 하 여 결합 된 특정 기능을 수행할 수 있는지 여부를 나타내는 메서드를 통해 노출 됩니다.Validation, serialization, and deserialization functionality is exposed through properties or methods that indicate whether the handler can perform a specific function combined with the method or methods that implement the functionality. 다음 목록에는 해당 기능을 구현 하는 메서드를 사용 하 여 기능을 나타내는 메서드나 속성 쌍:The following list pairs the properties or methods that indicate functionality with the methods that implement that functionality:

CreateToken 하며 CreateSecurityTokenReference 메서드는 구현 파이프라인에서 호출 됩니다는 SecurityTokenService 클래스입니다.The CreateToken and the CreateSecurityTokenReference methods are called from the pipeline in implementations of the SecurityTokenService class.

DetectReplayedToken 지정한 토큰이 이미 수신 여부를 결정 하는 WIF 인프라에서 호출 됩니다.The DetectReplayedToken method is called by the WIF infrastructure to determine whether the specified token has already been received. 기본적으로이 메서드는 다음과 같이 반환 됩니다. false를 나타내는 토큰을 이미 수신 되지 않았습니다.By default this method returns false, which indicates that the token has not already been received. 메서드를 재정의 하 고 재생 된 토큰을 검색 하는 논리를 제공할 수 있습니다.You can override the method and provide logic to detect replayed tokens.

생성자

SecurityTokenHandler()

SecurityTokenHandler 클래스를 초기화하기 위해 파생 클래스의 생성자에서 호출됩니다.Called from constructors in derived classes to initialize the SecurityTokenHandler class.

속성

CanValidateToken

처리기가 보안 토큰의 유효성 검사를 지원하는지 나타내는 값을 가져옵니다.Gets a value that indicates whether the handler supports validation of security tokens.

CanWriteToken

처리기가 보안 토큰을 serialize할 수 있는지 나타내는 값을 가져옵니다.Gets a value that indicates whether the handler can serialize security tokens.

Configuration

현재 인스턴스에 대한 구성을 제공하는 SecurityTokenHandlerConfiguration 개체를 가져오거나 설정합니다.Gets or sets the SecurityTokenHandlerConfiguration object that provides configuration for the current instance.

ContainingCollection

현재 인스턴스를 포함하는 토큰 처리기 컬렉션을 가져옵니다.Gets the token handler collection that contains the current instance.

TokenType

파생 클래스에서 재정의되는 경우 이 인스턴스에서 처리하는 보안 토큰의 형식을 가져옵니다.When overridden in a derived class, gets the type of the security token that is processed by this instance.

메서드

CanReadKeyIdentifierClause(XmlReader)

지정된 XML 리더기가 키 식별자 절로 언급된 XML 요소가 이 인스턴스에 의해 역직렬화될 수 있는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether the XML element referred to by the specified XML reader is a key identifier clause that can be deserialized by this instance.

CanReadToken(String)

지정된 문자열이 이 인스턴스에 의해 처리한 형식의 토큰으로 역직렬화될 수 있는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether the specified string can be deserialized as a token of the type processed by this instance.

CanReadToken(XmlReader)

지정된 XML 리더기에 의해 참조된 XML 요소가 이 인스턴스에 의해 처리한 형식의 토큰으로 읽힐 수 있는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether the XML element referenced by the specified XML reader can be read as a token of the type processed by this instance.

CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause)

이 인스턴스가 지정된 키 식별자 절을 serialize할 수 있는지 여부를 나타내는 값을 반환합니다.Returns a value that indicates whether the specified key identifier clause can be serialized by this instance.

CreateSecurityTokenReference(SecurityToken, Boolean)

파생 클래스에서 재정의되는 경우 해당 클래스에 의해 처리되는 토큰에 대한 보안 토큰 참조를 만듭니다.When overridden in a derived class, creates the security token reference for tokens processed by that class. 이 메서드는 STS(보안 토큰 서비스)에 의해 호출됩니다.This method is typically called by a security token service (STS).

CreateToken(SecurityTokenDescriptor)

파생 클래스에서 재정의되는 경우 지정된 설명자를 사용하여 보안 토큰을 만듭니다.When overridden in a derived class, creates a security token using the specified token descriptor. 이 메서드는 STS(보안 토큰 서비스)에 의해 호출됩니다.This method is called by a security token service (STS).

DetectReplayedToken(SecurityToken)

파생된 클래스에서 재정의된 경우 지정된 토큰이 재생 중인 것으로 검색되면 예외를 throw합니다.When overridden in a derived class, throws an exception if the specified token is detected as being replayed.

Equals(Object)

지정한 개체가 현재 개체와 같은지를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetTokenTypeIdentifiers()

파생 클래스에서 재정의되는 경우 요청에 사용된 URI를 반환하여 해당 클래스에 의해 처리된 형식의 토큰을 식별합니다.When overridden in a derived class, returns the set of URIs that are used in requests to identify a token of the type processed by the derived class.

GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
LoadCustomConfiguration(XmlNodeList)

파생 클래스에서 재정의되는 경우 XML에서 사용자 지정 구성을 로드합니다.When overridden in a derived class, loads custom configuration from XML.

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ReadKeyIdentifierClause(XmlReader)

파생 클래스에서 재정의된 경우 지정된 XML 판독기에 의해 참조된 XML을 파생 클래스에 의해 처리된 키 식별자 절로 deserialize합니다.When overridden in a derived class, deserializes the XML referenced by the specified XML reader to a key identifier clause that references a token processed by the derived class.

ReadToken(String)

파생 클래스에서 재정의되는 경우 지정된 문자열을 파생된 클래스에 의해 처리된 유형의 토큰으로 deserialize합니다.When overridden in a derived class, deserializes the specified string to a token of the type processed by the derived class.

ReadToken(XmlReader)

파생 클래스에서 재정의되는 경우 지정된 문자열을 파생 클래스에 의해 처리된 유형의 토큰으로 deserialize합니다.When overridden in a derived class, deserializes the XML referenced by the specified XML reader to a token of the type processed by the derived class.

ReadToken(XmlReader, SecurityTokenResolver)

파생 클래스에서 재정의되는 경우 지정된 XML 판독기에 의해 참조된 XML을 지정된 토큰 확인자를 사용하여 파생 클래스에 의해 처리된 형식의 토큰으로 deserialize합니다.When overridden in a derived class, deserializes the XML referenced by the specified XML reader to a token of the type processed by the derived class by using the specified token resolver.

ToString()

현재 개체를 나타내는 string을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)
TraceTokenValidationFailure(SecurityToken, String)

추적 기능이 설정된 경우 보안 토큰의 유효성 검사 중 오류 이벤트를 추적합니다.Traces the failure event during the validation of security tokens when tracing is enabled.

TraceTokenValidationSuccess(SecurityToken)

추적 기능이 설정된 경우 보안 토큰 이벤트의 성공적인 유효성 검사를 추적합니다.Traces the successful validation of security tokens event when tracing is enabled.

ValidateToken(SecurityToken)

파생 클래스에서 재정의되는 경우 지정한 보안 토큰의 유효성을 검사합니다.When overridden in a derived class, validates the specified security token. 토큰은 파생된 클래스에서 처리되는 형식이어야 합니다.The token must be of the type processed by the derived class.

WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause)

파생 클래스에서 재정의되는 경우 지정한 키 식별자 절을 XML에 serialize합니다.When overridden in a derived class, serializes the specified key identifier clause to XML. 키 식별자 절은 파생된 클래스에서 지원되는 형식이어야 합니다.The key identifier clause must be of the type supported by the derived class.

WriteToken(SecurityToken)

파생 클래스에서 재정의되는 경우 지정한 보안 토큰을 문자열에 serialize합니다.When overridden in a derived class, serializes the specified security token to a string. 토큰은 파생된 클래스에서 처리되는 형식이어야 합니다.The token must be of the type processed by the derived class.

WriteToken(XmlWriter, SecurityToken)

파생 클래스에서 재정의되는 경우 지정한 보안 토큰을 XML에 serialize합니다.When overridden in a derived class, serializes the specified security token to XML. 토큰은 파생된 클래스에서 처리되는 형식이어야 합니다.The token must be of the type processed by the derived class.

적용 대상

추가 정보