다음을 통해 공유


ID 위임을 사용하는 시기

ID 위임이란 무엇인가요?

Id 위임은 AD FS(Active Directory Federation Services)의 기능 AD FS 관리자를 허용 하계정 사용자를 가장 하도록 지정 합니다. 사용자를 가장하는 계정을 위임이라고 합니다. 이 위임 기능은 원래 요청의 권한 부여 체인에 있는 각 애플리케이션, 데이터베이스 또는 서비스에 대해 순차적으로 이루어져야 하는 일련의 액세스 제어 검사가 있는 여러 분산 애플리케이션에 중요합니다. 웹 애플리케이션 "프런트 엔드”가 Microsoft SQL Server 데이터베이스에 연결된 웹 서비스 같은 더 안전한 "백 엔드"에서 데이터를 검색해야 하는 실제 시나리오가 많이 있습니다.

예를 들어 파트너 조직이 자신들의 구매 기록 및 계정 상태를 볼 수 있도록 기존의 물품 주문 웹 사이트를 프로그래밍 방식으로 개선할 수 있습니다. 보안상의 이유로 모든 파트너 금융 데이터는 전용 SQL(구조적 쿼리 언어) 서버의 보안 데이터베이스에 저장됩니다. 이런 경우에는 프런트 엔드 애플리케이션의 코드는 파트너 조직의 금융 데이터에 대해 전혀 알지 못합니다. 그러므로 프런트 엔드 응용 프로그램은 (이 경우) 물품 데이터베이스에 대한 웹 서비스(백 엔드)를 호스트하는 네트워크의 다른 곳에 있는 다른 컴퓨터에서 해당 데이터를 검색해야 합니다.

이 데이터 검색 프로세스에서 성공하려면 다음 일러스트레이션 같이 물품 데이터베이스에 대한 웹 서비스와 웹 애플리케이션 간에 몇 가지 연속적인 권한 부여 "핸드쉐이킹"이 발생해야 합니다.

id 위임

원래 요청은 웹 서버 자체에 대해 이루어지지만 웹 서버가 웹 서버에 액세스하려는 사용자 조직과 완전히 다른 조직에 있을 가능성이 있으므로, 요청과 함께 보낸 보안 토큰은 웹 서버 외에 다른 컴퓨터에 액세스하는 데 필요한 권한 부여 조건을 충족하지 않습니다. 그러므로 원래 사용자 요청이 이행될 수 있는 유일한 방법은 적절한 액세스 권한을 가진 보안 토큰을 다시 제출하도록 리소스 파트너 조직에 중간 페더레이션 서버를 배치하는 것입니다.

ID 위임은 어떻게 작동하나요?

일반 데이터 또는 기능에 액세스하기 위해 다중 계층 애플리케이션 아키텍처의 웹 애플리케이션은 종종 웹 서비스를 호출합니다. 서비스가 권한 부여 결정을 내리고 감사를 용이하게 할 수 있도록 이러한 웹 서비스가 원래 사용자의 ID를 아는 것이 중요합니다. 이 경우 프런트 엔드 웹 애플리케이션은 웹 서비스에 대한 사용자를 대리자로 나타냅니다. AD FS는 Active Directory 계정을 다른 신뢰 당사자에 게 사용자 역할을 허용 하 여이 시나리오를 도와줍니다. ID 위임 시나리오가 다음 일러스트레이션에 나와 있습니다.

ID 위임 시나리오를 보여주는 그림.

  1. Frank가 다른 조직에 있는 웹 애플리케이션에서 물품 주문 기록에 액세스하려고 합니다. 클라이언트 컴퓨터가 요청하고 프런트 엔드 부분 정렬 웹 애플리케이션을 위한 토큰을 받습니다.

  2. 클라이언트 컴퓨터가 1단계에서 얻은 토큰을 포함해 웹 애플리케이션으로 요청을 보내 클라이언트의 ID를 증명합니다.

  3. 웹 애플리케이션이 클라이언트에 대한 트랜잭션을 완료하려면 웹 서비스와 통신해야 합니다. 웹 애플리케이션 웹 서비스와 상호 작용 하는 위임 토큰을 가져오기 위해 AD FS에 연결 합니다. 위임 토큰은 사용자 역할을 하는 대리자에게 발급된 보안 토큰입니다. AD FS 웹 서비스에 대 한 대상으로 클라이언트에 대 한 클레임을 사용 하 여 위임 토큰을 반환 합니다.

  4. 웹 애플리케이션 클라이언트와 작동 하는 웹 서비스에 액세스 하려면 3 단계에서 AD FS에서 얻은 토큰을 사용 합니다. 위임 토큰을 검사하면 웹 서비스는 웹 애플리케이션이 클라이언트 역할을 하는지 확인할 수 있습니다. 웹 서비스가 권한 부여 정책을 실행하고 요청을 기록한 다음 Frank가 원래 요청한 필요한 물품 기록 데이터를 웹 애플리케이션에 제공(즉, Frank에게 제공)합니다.

특정 대리자에 대 한 AD FS를 웹 애플리케이션 위임 토큰을 요청할 수 있습니다 웹 서비스를 제한할 수 있습니다. 이 작업이 성공하려면 클라이언트 컴퓨터에 Active Directory 계정이 있어서는 안 됩니다. 마지막으로, 위에서 설명한 것처럼 웹 서비스는 사용자 역할을 하는 대리자의 ID를 쉽게 확인할 수 있습니다. 이렇게 하면 클라이언트 컴퓨터에 직접 지시할지 아니면 대리자를 통해서 지시할지 여부에 따라 웹 서비스가 다른 동작을 나타낼 수 있습니다.

ID 위임에 대해 AD FS 구성

AD FS 관리 스냅인을 사용하여 데이터 검색 프로세스를 용이하게 해야 할 때마다 ID 위임에 대한 AD FS를 구성할 수 있습니다. 구성 후에는 보호되는 데이터에 대한 액세스 권한을 제공하기 전에 백엔드 서비스에서 요청할 수 있는 권한 부여 컨텍스트를 포함하는 새로운 보안 토큰을 AD FS가 생성할 수 있습니다.

AD FS 있는 사용자를 가장할 수를 제한 하지 않습니다. Id 위임에 대 한 AD FS를 구성한 후 다음을 수행 합니다.

  • 사용자를 가장하는 토큰을 요청하기 위해 권한을 위임할 수 있는 서버를 결정합니다.

  • 위임된 클라이언트 계정에 대한 ID 컨텍스트와 대리자 역할을 하는 서버를 설정하고 둘 사이를 구분합니다.

AD FS 관리 스냅인에서 신뢰 당사자 트러스트에 위임 권한 부여 규칙을 추가하여 ID 위임을 구성할 수 있습니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 Checklist: Creating Claim Rules for a Relying Party Trust를 참조하세요.

ID 위임에 대해 프런트 엔드 웹 애플리케이션 구성

개발자에게는 웹 프런트 엔드 애플리케이션이나 서비스를 적절하게 프로그래밍하여 위임 요청을 AD FS 컴퓨터로 리디렉션할 때 사용할 수 있는 옵션이 몇 가지 있습니다. ID 위임 작업을 위해 웹 애플리케이션을 사용자 지정하는 방법에 대한 자세한 내용은 Windows Identity Foundation SDK를 참조하세요.

참고 항목

Windows Server 2012의 AD FS 디자인 가이드