Claim 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
클레임을 나타냅니다.
public ref class Claim
public class Claim
[System.Serializable]
public class Claim
type Claim = class
[<System.Serializable>]
type Claim = class
Public Class Claim
- 상속
-
Claim
- 특성
예제
다음 예제에서는 HTTP 요청을 수행하는 인증된 사용자에 연결된 클레임을 추출하고 HTTP 응답에 씁니다. 현재 사용자는 에서 HttpContext 로 ClaimsPrincipal 읽고 클레임은 에서 읽습니다. 그런 다음 클레임이 개체에 HttpResponse 기록됩니다.
ClaimsPrincipal principal = HttpContext.Current.User as ClaimsPrincipal;
if (null != principal)
{
foreach (Claim claim in principal.Claims)
{
Response.Write("CLAIM TYPE: " + claim.Type + "; CLAIM VALUE: " + claim.Value + "</br>");
}
}
설명
클레임은 발급자의 주제에 대한 문입니다. 클레임은 인증 및 권한 부여 작업의 컨텍스트에서 유용한 주체의 특성을 나타냅니다. 주체와 발급자는 모두 ID 시나리오의 일부인 엔터티입니다. 주체의 몇 가지 일반적인 예는: 사용자, 애플리케이션 또는 서비스, 디바이스 또는 컴퓨터. 발급자의 일반적인 예는 운영 체제, 애플리케이션, 서비스, 역할 공급자, ID 공급자 또는 페더레이션 공급자입니다. 발급자에서는 일반적으로 STS(보안 토큰 서비스)를 통해 보안 토큰을 발급하여 클레임을 전달합니다. (WIF에서는 클래스에서 SecurityTokenService 파생하여 STS를 빌드할 수 있습니다.) 경우에 따라 발급자로부터 받은 클레임 컬렉션을 리소스에 직접 저장된 주체 특성으로 확장할 수 있습니다. 클레임을 평가하여 권한 부여 프로세스 중에 데이터 및 기타 보안 리소스에 대한 액세스 권한을 결정할 수 있으며 주체에 대한 인증 결정을 내리거나 표현하는 데 사용할 수도 있습니다.
.NET 4.5부터 클레임 기반 ID를 구현하는 WIF(Windows Identity Foundation) 클래스가 .NET Framework 완전히 통합되었습니다. 클레임 개념은 클래스에 의해 Claim 구현됩니다.
다음은 클래스의 중요한 속성에 대해 Claim 설명합니다.
속성은 Type 클레임에 대한 의미 체계 정보를 포함하는 문자열(일반적으로 URI)이며 클레임 값의 의미를 알려줍니다. 예를 들어 클레임 유형 GivenName 이 (
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"
)인 클레임은 사용자의 이름을 나타냅니다. 속성 값은 클래스에 Type 정의된 잘 알려진 클레임 형식 중 하나이거나 발급자에서 ClaimTypes 정의한 임의의 URI일 수 있습니다. 예를 들어 "urn:spendinglimit"의 클레임 유형은 발급자의 비즈니스 컨텍스트 내에서 적합한 사용자 특성을 나타낼 수 있습니다.속성에는 Value 클레임 값이 포함됩니다. 종속성을 줄이고 관리를 간소화하기 위해 WIF에서 클레임 값은 문자열로만 표시됩니다. 더 복잡한 값 형식의 경우 표준 XML 스키마 형식을 사용하여 값을 문자열로 직렬화하고 역직렬화하는 방법을 나타내는 것이 좋습니다.
속성에는 ValueType 값의 형식 정보를 식별하는 문자열이 포함되어 있습니다. 이 속성은 값의 형식을 이해하고 역직렬화하는 방법에 대한 정보를 제공하는 데 사용해야 합니다. 솔루션에 복잡한 값 형식이 필요한 경우 속성의 표준 XML 스키마 형식 ValueType 을 사용하여 속성이 문자열로 직렬화되고 역직렬화하는 방법을 Value 나타내는 것이 좋습니다.
속성은 SubjectClaimsIdentity 클레임의 주체를 나타내는 개체입니다. 클레임의 주체는 클레임이 어설션되는 엔터티(일반적으로 리소스에 대한 액세스를 요청하는 사용자)입니다. 에는 ClaimsIdentity 해당 속성 중에서 하나 이상의 발급자가 증명한 것으로 주체의 속성 및 특성을 설명하는 클레임 컬렉션이 포함됩니다.
속성에는 Issuer 클레임을 발급한 엔터티의 이름이 포함됩니다. 클레임의 발급자는 발급자 이름 레지스트리에서 유지 관리되는 잘 알려진 발급자 목록에서 가져온 이름을 포함하는 문자열로 WIF로 표시됩니다. 발급자 이름 레지스트리는 클래스에서 IssuerNameRegistry 파생되는 클래스의 instance. 발급자 이름 레지스트리는 해당 발급자가 생성한 토큰의 서명을 확인하는 데 필요한 암호화 자료에 니모닉 이름을 연결합니다. 예를 들어 ConfigurationBasedIssuerNameRegistry .NET 4.5를 사용하여 기본 제공되는 클래스는 각 발급자의 니모닉 이름을 해당 X.509 인증서와 연결합니다. 잘 알려진 발급자 목록은 일반적으로 시작 시 발급자 이름 레지스트리에 의해 빌드됩니다. 사용 하는 목록은 ConfigurationBasedIssuerNameRegistry 애플리케이션 구성 파일에 지정 됩니다.
속성은 OriginalIssuer 원래 클레임을 발급한 엔터티의 이름을 포함합니다. 이 속성은 클라이언트가 RP 애플리케이션을 표시 하기 전에 여러 발급자를 통해 클레임을 전달할 수 있습니다 하는 시나리오를 활용 하도록 설계 되었습니다. 페더레이션 시나리오 예:입니다. 속성을 검사 OriginalIssuer 하여 원래 클레임을 발급한 엔터티를 확인할 수 있습니다. 이름은 속성의 경우 Issuer 와 같이 발급자 이름 레지스트리에서 유지 관리하는 잘 알려진 발급자 목록에서 가져옵니다.
생성자
Claim(BinaryReader) |
지정된 Claim을 사용하여 BinaryReader의 인스턴스를 초기화합니다. |
Claim(BinaryReader, ClaimsIdentity) |
지정된 판독기와 제목을 사용하여 Claim 클래스의 새 인스턴스를 초기화합니다. |
Claim(Claim) |
Claim 클래스의 새 인스턴스를 초기화합니다. |
Claim(Claim, ClaimsIdentity) |
지정된 보안 클레임과 주체를 사용하여 Claim 클래스의 새 인스턴스를 초기화합니다. |
Claim(String, String) |
지정된 클레임 형식 및 값을 사용하여 Claim 클래스의 새 인스턴스를 초기화합니다. |
Claim(String, String, String) |
지정된 클레임 형식, 값 및 값 형식을 사용하여 Claim 클래스의 새 인스턴스를 초기화합니다. |
Claim(String, String, String, String) |
지정된 클레임 형식, 값, 값 형식, 발급자를 사용하여 Claim 클래스의 새 인스턴스를 초기화합니다. |
Claim(String, String, String, String, String) |
지정된 클레임 유형, 값, 값 형식, 발급자 및 원래 발급자를 사용하여 클래스의 Claim 새 instance 초기화합니다. |
Claim(String, String, String, String, String, ClaimsIdentity) |
지정된 클레임 형식, 값, 값 형식, 발급자, 원래 발급자 및 주체를 사용하여 Claim 클래스의 새 인스턴스를 초기화합니다. |
속성
CustomSerializationData |
파생된 형식에서 제공하는 추가 데이터를 포함합니다. |
Issuer |
클레임의 발급자를 가져옵니다. |
OriginalIssuer |
클레임의 원래 발급자를 가져옵니다. |
Properties |
이 클레임과 연결된 추가 속성을 포함하는 사전을 가져옵니다. |
Subject |
클레임의 제목을 가져옵니다. |
Type |
클레임의 클레임 형식을 가져옵니다. |
Value |
클레임의 값을 가져옵니다. |
ValueType |
클레임의 값 형식을 가져옵니다. |
메서드
Clone() |
이 개체에서 복사한 새 Claim 개체를 반환합니다. 새 클레임에 주체가 없습니다. |
Clone(ClaimsIdentity) |
이 개체에서 복사한 새 Claim 개체를 반환합니다. 새 클레임의 주체는 지정된 ClaimsIdentity로 설정됩니다. |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
이 Claim 개체의 문자열 표현을 반환합니다. |
WriteTo(BinaryWriter) |
이 Claim을 작성기에 씁니다. |
WriteTo(BinaryWriter, Byte[]) |
이 Claim을 작성기에 씁니다. |
적용 대상
추가 정보
.NET