ClaimsAuthenticationManager 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
클레임 인증 관리자에 대한 기본 구현을 정의합니다. 클레임 인증 관리자는 실행이 애플리케이션 코드에 도달하기 전에 들어오는 보안 주체의 클레임 컬렉션에 처리 논리(필터링, 유효성 검사, 확장)를 적용하기 위한 클레임 처리 파이프라인의 위치를 제공합니다.
public ref class ClaimsAuthenticationManager : System::IdentityModel::Configuration::ICustomIdentityConfiguration
public class ClaimsAuthenticationManager : System.IdentityModel.Configuration.ICustomIdentityConfiguration
type ClaimsAuthenticationManager = class
interface ICustomIdentityConfiguration
Public Class ClaimsAuthenticationManager
Implements ICustomIdentityConfiguration
- 상속
-
ClaimsAuthenticationManager
- 구현
예제
다음 코드는 들어오는 클레임에 대한 검사를 수행하지 않고 들어오는 보안 주체에 역할 클레임을 추가하는 간단한 클레임 인증 관리자를 보여줍니다.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Security.Claims;
namespace MyClaimsAuthenticationManager
{
class SimpleClaimsAuthenticatonManager : ClaimsAuthenticationManager
{
public override ClaimsPrincipal Authenticate(string resourceName, ClaimsPrincipal incomingPrincipal)
{
if (incomingPrincipal != null && incomingPrincipal.Identity.IsAuthenticated)
{
((ClaimsIdentity)incomingPrincipal.Identity).AddClaim(new Claim(ClaimTypes.Role, "User"));
}
return incomingPrincipal;
}
}
}
다음 XML은 요소를 보여줍니다 <claimsAuthenticationManager> .
<system.identityModel>
<identityConfiguration>
<claimsAuthenticationManager type="MyClaimsAuthenticationManager.SimpleClaimsAuthenticatonManager, MyClaimsAuthenticationManager" />
...
</identityConfiguration>
</system.identityModel>
설명
클레임 인증 관리자는 애플리케이션의 클레임 처리 파이프라인에서 RP 애플리케이션 코드가 실행되기 전에 제공된 클레임 집합에 새 클레임의 유효성을 검사, 필터링, 수정, 들어오는 클레임을 삽입하는 데 사용할 수 있는 ClaimsPrincipal 확장성 지점을 제공합니다. RP 애플리케이션에 필요한 경우의 ClaimsPrincipal 사용자 지정 구현을 반환할 수도 있습니다. 클래스에서 제공하는 ClaimsAuthenticationManager 기본 구현은 수정되지 않은 클레임을 ClaimsPrincipal 반환합니다. 그러나 이 클래스에서 파생되고 메서드를 재정의 Authenticate 하여 클레임 ClaimsPrincipal 을 수정하거나 사용자 지정 ClaimsPrincipal을 반환할 수 있습니다.
사용자 지정 클레임 인증 관리자를 만드는 일반적인 이유는 RP 애플리케이션에서 더 잘 유지 관리되거나 알려진 정보에 따라 클레임을 추가, 제거 또는 변환하는 것입니다. 예를 들어 쇼핑 카트 애플리케이션에서 고객 구매 기록은 RP 애플리케이션에서 유지 관리하는 데이터 베이스에 보관된 다음 들어오는 보안 주체에서 찾은 이름 클레임의 값을 기반으로 클레임 인증 관리자가 반환한 클레임 보안 주체에 추가될 수 있습니다.
클래스를 사용 ClaimsAuthenticationManager 하거나 > 자식 요소인 > 구성에서 프로그래밍 방식으로 사용하도록 애플리케이션을 구성할 수 있습니다. 사용자 지정 관리자를 LoadCustomConfiguration 구성할 수 있는 요소의 사용자 지정 자식 요소에 <claimsAuthenticationManager> 대한 처리를 제공하도록 메서드를 재정의할 수 있습니다. 기본 구현은 ClaimsAuthenticationManager 자식 요소를 처리하지 않습니다.
클레임 인증 관리자를 사용하도록 애플리케이션을 구성하면 요청 파이프라인에서 WIF(Windows Identity Foundation)에서 호출됩니다.
생성자
| Name | Description |
|---|---|
| ClaimsAuthenticationManager() |
ClaimsAuthenticationManager 클래스의 새 인스턴스를 초기화합니다. |
메서드
| Name | Description |
|---|---|
| Authenticate(String, ClaimsPrincipal) |
파생 클래스에서 재정의되는 경우 RP 애플리케이션의 요구 사항과 일치하는 개체를 반환 ClaimsPrincipal 합니다. 기본 구현은 들어오는 ClaimsPrincipal을 수정하지 않습니다. |
| Equals(Object) |
지정된 개체가 현재 개체와 같은지 여부를 확인합니다. (다음에서 상속됨 Object) |
| GetHashCode() |
기본 해시 함수로 사용됩니다. (다음에서 상속됨 Object) |
| GetType() |
현재 인스턴스의 Type 가져옵니다. (다음에서 상속됨 Object) |
| LoadCustomConfiguration(XmlNodeList) |
파생 클래스에서 재정의되는 경우 XML에서 사용자 지정 구성을 로드합니다. |
| MemberwiseClone() |
현재 Object단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
| ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |