클레임은 사용자에 대한 설명(예: 이름, ID, 키, 그룹, 권한 또는 기능)이며 응용 프로그램에서 권한 부여를 위해 사용되는 ADFS(Active Directory Federation Service) 페더레이션의 두 파트너가 이해하는 설명입니다.

ADFS 페더레이션 서비스는 서로 다른 여러 항목 간에 트러스트를 연결합니다. 임의의 값을 포함하는 클레임의 트러스트된 교환을 허용하도록 설계되었습니다. 받는 상대(예: 리소스 파트너)는 이러한 클레임을 사용하여 권한 부여 결정을 내립니다.

클레임은 다음 세 가지 방법으로 페더레이션 서비스를 통과합니다.

  • 계정 저장소에서 계정 페더레이션 서비스를 거쳐 리소스 파트너로

  • 계정 파트너에서 리소스 페더레이션 서비스를 거쳐 리소스 응용 프로그램으로

  • 계정 저장소에서 페더레이션 서비스를 거쳐 리소스 응용 프로그램으로

페더레이션 서비스는 이 세 가지 역할을 모두 수행하도록 구성될 수 있습니다. 따라서 단일 페더레이션 서비스는 세 가지 통신 흐름을 모두 쉽게 만들 수 있습니다.

페더레이션 서비스는 ID 클레임, 그룹 클레임 및 사용자 지정 클레임의 세 가지 클레임 유형을 지원합니다. 다음 표에서는 각 클레임 유형에 대해 자세히 설명합니다.

클레임 유형 설명

ID

UPN, 전자 메일 및 일반 이름은 ADFS에서 ID 클레임 유형으로 사용됩니다.

  • UPN: Kerberos 스타일의 UPN(사용자 계정 이름)을 나타냅니다(예: user@realm). 한 클레임만 UPN 유형이 될 수 있습니다. 여러 개의 UPN 값을 알려 줘야 하는 경우에도 하나만 UPN 유형이 될 수 있습니다. 추가 UPN은 사용자 지정 클레임 유형으로 구성할 수 있습니다.

  • 전자 메일: user@domain 형식의 RFC(Request for Comments) 2822 스타일 전자 메일 이름을 나타냅니다. 한 클레임만 전자 메일 유형이 될 수 있습니다. 여러 개의 전자 메일 값을 알려 줘야 하는 경우에도 하나만 전자 메일 유형이 될 수 있습니다. 추가 전자 메일은 사용자 지정 클레임 유형으로 구성할 수 있습니다.

  • 일반 이름: 개인 설정에 사용되는 임의의 문자열을 나타냅니다. 예를 들어 John Smith 또는 Tailspin Toys Employee가 있습니다. 한 클레임만 일반 이름 유형을 가질 수 있습니다. 일반 이름 클레임의 고유함을 보장하는 메커니즘은 없습니다. 따라서 이 클레임 유형을 권한 부여 결정에 사용할 경우 주의하십시오.

그룹

그룹 또는 역할의 구성원 클레임을 나타냅니다. 관리자는 그룹 유형이 "그룹 클레임"인 개별 클레임을 정의합니다. 예를 들어 [Developer, Tester, Program Manager]의 그룹 클레임 집합을 정의할 수 있습니다. 각 그룹 클레임은 클레임 채우기 및 매핑을 위한 별개의 관리 단위입니다. 그룹 클레임의 값을 구성원 클레임을 나타내는 부울 값으로 생각하면 편합니다.

사용자 지정

직원 ID 번호처럼 사용자에 대한 사용자 지정 정보를 포함하는 클레임을 나타냅니다.

세 가지 ID 클레임 유형 중 두 개 이상이 토큰에 있는 경우 ID 클레임의 우선 순위는 다음과 같습니다.

  1. UPN

  2. 전자 메일

  3. 일반 이름

토큰을 발급하려면 다음과 같은 ID 클레임 유형이 최소한 하나는 있어야 합니다.

클레임 매핑

ADFS는 페더레이션 서비스가 발급한 보안 토큰을 통해 클레임을 전달하는 WS-F PRP(WS-Federation Passive Requester Protocol)를 사용합니다. 처음에 클레임은 AD DS(Active Directory 도메인 서비스) 계정 저장소 또는 AD LDS(Active Directory Lightweight Directory Services) 계정 저장소로부터 채워집니다.

페더레이션 서비스는 클레임이 페더레이션 파트너로 이동하거나 페더레이션 파트너로부터 들어올 때 클레임을 매핑할 수 있습니다. 클레임 매핑은 들어오는 클레임을 매핑, 제거 또는 필터링하거나 나가는 클레임에 전달하는 작업입니다. 클레임 매핑은 각 페더레이션 파트너마다 다를 수 있습니다. 이러한 클레임의 채우기 및 매핑을 정의하는 것이 페더레이션 구성에 중요합니다. 클레임 매핑은 대/소문자를 구분하는 문자열 비교를 사용합니다. 다음 그림은 클레임 매핑 프로세스를 보여줍니다.

요구 매핑 프로세스

조직 클레임 집합

들어오는 모든 클레임은 조직 클레임에 매핑됩니다. 조직 클레임은 조직의 네임스페이스에서 중간 또는 표준 형식의 클레임입니다. 모든 내부 페더레이션 서비스 작업은 조직 클레임 집합에서 수행됩니다. 조직 클레임은 리소스 응용 프로그램에서 사용합니다.

조직 클레임에서는 통신해야 하는 두 조직 간에 매핑을 개별적으로 관리할 필요가 없습니다. 각 조직은 조직 클레임에서 들어오거나 나가는 단일 매핑을 정의합니다. 따라서 ADFS의 관리가 간단해집니다. 예를 들어 페더레이션의 조건은 다음과 같습니다.

x개의 계정 파트너가 있음

y개의 리소스 응용 프로그램이 있음

즉, 페더레이션에는 x + y개의 클레임 매핑이 있는 것입니다.

이는 잠재적인 x × y개의 클레임 매핑보다 줄어든 것입니다. 구체적인 예로 페더레이션 서비스의 조건이 다음과 같습니다.

3개의 계정 파트너가 있음

7개의 리소스 응용 프로그램이 있음

들어오는 클레임에서 나가는 클레임으로 매핑을 직접 수행할 수 있으면 페더레이션에 필요한 클레임 매핑이 잠재적인 21개에서 10개로 줄어듭니다.

전자 메일

전자 메일 클레임 유형은 항상 전자 메일 클레임 유형에 매핑됩니다. 이 매핑의 일부로 계정 페더레이션 서비스에서 도메인 접미사는 상수 값에 매핑될 수 있습니다. 도메인 접미사를 상수 값에 매핑하면 파트너 조직이 내부 포리스트 구조에 대한 정보를 다른 조직에 실수로 제공하지 못하도록 방지됩니다. 리소스 페더레이션 서비스에서는 상수 값 목록에 대해 도메인 접미사를 필터링할 수 있습니다.

다음 예에서는 Tailspin Toys 및 Adventure Works라는 두 조직 간의 ADFS 페더레이션에 대해 설명합니다. 이 예에서는 Tailspin Toys가 계정 파트너이고 Adventure Works가 리소스 파트너입니다.

  • 계정 페더레이션 서비스 역할을 하는 Tailspin Toys는 Adventure Works를 위해 전자 메일 조직 클레임을 나가는 전자 메일 클레임에 매핑합니다. 이 매핑의 일부로 모든 전자 메일 접미사를 tailspintoys.com으로 매핑합니다. 조직 전자 메일 클레임이 e-mail=jsmith@sales.tailspintoys.com일 경우 나가는 전자 메일 클레임은 e-mail=jsmith@tailspintoys.com이 됩니다.

  • 리소스 페더레이션 서비스 역할을 하는 Adventure Works는 들어오는 Tailspin Toys 전자 메일 클레임을 전자 메일 클레임 조직 클레임에 매핑하며 이 매핑의 일부로 tailspintoys.com에 대한 접미사 목록을 필터링합니다. 따라서 들어오는 Tailspin Toys 전자 메일 클레임 e-mail=jsmith@tailspintoys.com은 수락되지만 들어오는 Tailspin Toys 전자 메일 클레임 e-mail=jsmith@adventure-works.com은 거부됩니다.

UPN

UPN 클레임 유형은 항상 UPN 클레임 유형에 매핑됩니다. 전자 메일 클레임과 동일한 접미사 매핑 및 필터링을 따릅니다. 그러나 AD DS에서는 @ 기호가 없는 UPN이 허용되므로 계정 페더레이션 서비스는 UPN 접미사 매핑이 정의된 경우 @ 기호를 추가하고 그 뒤에 접미사를 붙입니다. 그렇지 않고 접미사가 전달되는 경우에는 페더레이션 서비스가 @ 기호 없이 UPN을 그대로 전달합니다. 리소스 쪽에서는 UPN 접미사가 허용되는 경우 @ 기호 없는 UPN을 수락합니다. 그렇지 않고 특정 UPN 접미사가 허용되는 경우에는 @ 기호 없는 UPN을 거부합니다.

일반 이름

일반 이름 클레임 유형은 항상 일반 이름 클레임 유형에 매핑됩니다. 추가 규칙은 없습니다.

사용자 지정

사용자 지정 클레임 유형은 항상 다른 사용자 지정 클레임 유형에 매핑됩니다. 예를 들어 들어오는 클레임 집합이 UPN, Custom= [EmployeeNumber, TaxPayerID]이고 조직 클레임 집합이 UPN, Custom= [Employee, SSN]일 경우 EmployeeNumber에서 Employee로 매핑을 만들고 TaxPayerID에서 SSN으로 매핑을 만들 수 있습니다.

그룹

그룹 클레임 유형은 항상 다른 그룹 클레임 유형에 매핑됩니다. 예를 들어 들어오는 클레임 집합이 UPN, Group= [One, Two, Three]이고 조직 클레임 집합이 UPN, Group= [X,Y,Z]일 경우 One에서 Y로, Two에서 X로, Three에서 Z로 매핑을 만들 수 있습니다.

그룹-UPN 매핑

이전 섹션에서 설명한 표준 매핑 외에 특수한 그룹-UPN 클레임 매핑을 사용할 수도 있습니다. 그룹-UPN 클레임 매핑은 클레임이 계정 파트너로부터 들어올 때 리소스 페더레이션 서비스에서만 지원됩니다. 이 경우 UPN 클레임 유형은 UPN 클레임 유형에 매핑되지 않습니다. 대신 순서가 정해진 그룹-UPN 클레임 매핑 목록을 제공하십시오.

예를 들어 그룹-UPN 목록은 다음과 같을 수 있습니다.

  1. Dev - developers@internal.tailspintoys.com

  2. Test - testers@internal.tailspintoys.com

  3. PM - progmgrs@internal.tailspintoys.com

들어오는 클레임 집합이 Common name=John Smith, Group= [Dev]인 경우 조직 클레임 집합에는 Common name=John Smith, UPN=developers@internal.tailspintoys.com이 포함됩니다. 이 목록은 순서가 지정됩니다. 따라서 Common name=John Smith, Group= [Dev,PM]인 클레임 집합은 Common name=John Smith, UPN=developers@internal.tailspintoys.com이 됩니다. 또한 들어오는 클레임에 UPN이 있으면 UPN을 덮어씁니다. 이러한 특수 매핑 규칙은 특히 레거시 리소스에 액세스하는 그룹 기반 리소스 계정을 지원합니다. 그룹-UPN 매핑의 순서는 페더레이션 서비스의 트러스트 정책에 지정되어 있습니다.

클레임 감사

일부 그룹 클레임 및 사용자 지정 클레임을 감사 가능으로 지정할 수 있습니다. 감사를 사용하면 클레임 이름이 보안 이벤트 로그에 공개되지만 클레임 값은 공개되지 않습니다. 감사 가능한 클레임의 예로는 주민 등록 번호를 들 수 있습니다. 주민 등록 번호라는 클레임 이름은 공개되지만 해당 클레임에 저장된 실제 숫자 값은 공개되지 않습니다. 클레임이 생성되거나 매핑될 때는 클레임 값을 감사하지 않습니다.

참고

ID 클레임 유형은 항상 감사할 수 있습니다.

참고 항목


목차