이 페이지가 유용했습니까?
이 콘텐츠에 대한 여러분의 의견은 중요합니다. 의견을 알려주십시오.
추가 의견
1500자 남음
내보내기(0) 인쇄
모두 확장

.NET용 Azure AD 인증 라이브러리

업데이트 날짜: 2015년 3월

.NET용 Azure ADAL(AD 인증 라이브러리)을 사용하면 클라이언트 응용 프로그램 개발자가 클라우드나 온-프레미스 AD(Active Directory)에 대해 사용자를 쉽게 인증한 후 API 호출 보호를 위한 액세스 토큰을 가져올 수 있습니다. .NET용 ADAL에는 개발자가 인증을 보다 쉽게 수행할 수 있도록 하는 여러 기능이 있습니다. 여기에는 비동기식 지원, 액세스 토큰과 새로 고침 토큰을 저장하는 구성 가능한 토큰 캐시, 액세스 토큰 만료 시 새로 고침 토큰을 사용 가능한 경우 자동 토큰 새로 고침 등이 포함됩니다. ADAL은 복잡한 대부분을 처리하여 개발자가 응용 프로그램의 비즈니스 논리에 집중할 수 있도록 하며 보안 전문가가 아니더라도 리소스를 쉽게 보호하도록 할 수 있습니다.

.NET용 ADAL을 사용하여 아래의 주요 시나리오를 사용할 수 있습니다. 이러한 시나리오의 리소스 부분은 어떤 토큰 유효성 검사 논리를 사용해서도 구현할 수 있습니다.

  • 원격 리소스에 대해 클라이언트 응용 프로그램 사용자 인증: 이 시나리오에서 개발자는 Web API와 같이 Azure AD를 통해 보호되는 원격 리소스에 액세스해야 하는 클라이언트(예: WPF 응용 프로그램)를 가지고 있다고 가정합니다. 개발자는 Azure 구독을 보유하고 있고 다운스트림 Web API 호출 방법과 해당 Web API에서 사용하는 Azure AD 테넌트를 알고 있습니다. 따라서 이 개발자는 인증 환경을 ADAL에 완전히 위임하거나 사용자 자격 증명을 명시적으로 처리함으로써 ADAL을 사용하여 Azure AD를 쉽게 인증할 수 있습니다. ADAL을 사용하면 사용자를 쉽게 인증하고, Azure AD에서 액세스 토큰 및 새로 고침 토큰을 얻은 다음 해당 액세스 토큰을 사용하여 Web API에 요청을 할 수 있습니다.

    Azure AD에 대한 인증을 사용하는 이 시나리오를 보여 주는 코드 샘플은 Web API에 대한 네이티브 클라이언트 WPF 응용 프로그램을 참조하세요.

  • 원격 리소스에 대한 서버 응용 프로그램 인증: 이 시나리오에서 개발자는 Web API와 같이 Azure AD를 통해 보호되는 원격 리소스에 액세스해야 하는 서버에서 실행되는 응용 프로그램을 가지고 있다고 가정합니다. 개발자는 Azure 구독을 보유하고 있고 다운스트림 서비스 호출 방법과 Web API에서 사용하는 Azure AD 테넌트를 알고 있습니다. 따라서 이 개발자는 응용 프로그램의 자격 증명을 명시적으로 처리함으로써 ADAL을 사용하여 Azure AD를 쉽게 인증할 수 있습니다. ADAL을 사용하면 응용 프로그램의 클라이언트 자격 증명을 사용하여 Azure AD의 토큰을 쉽게 검색한 다음 해당 토큰을 사용해 Web API에 요청을 할 수 있습니다. ADAL은 또한 필요에 따라 액세스 토큰을 캐시하고 갱신하여 액세스 토큰의 수명을 관리할 수 있습니다.

    이 시나리오를 보여 주는 코드 샘플은 Web API에 대한 콘솔 응용 프로그램을 참조하세요.

  • 사용자 대신 서버 응용 프로그램을 인증하여 원격 리소스에 액세스: 이 시나리오에서 개발자는 Web API와 같이 Azure AD를 통해 보호되는 원격 리소스에 액세스해야 하는 서버에서 실행되는 응용 프로그램을 가지고 있다고 가정합니다. 또한 Azure AD에서 사용자 대신 요청된 경우여야 합니다. 개발자는 Azure 구독을 보유하고 있고 다운스트림 Web API 호출 방법과 서비스에서 사용하는 Azure AD 테넌트를 알고 있습니다. 웹 응용 프로그램에 사용자가 인증되면 응용 프로그램은 사용자의 권한 부여 코드를 Azure AD에서 가져올 수 있습니다. 그런 후에 웹 응용 프로그램은 .NET용 ADAL을 사용하여 응용 프로그램과 연결된 클라이언트 자격 증명 및 권한 부여 코드를 사용해 사용자 대신 액세스 토큰 및 새로 고침 토큰을 Azure AD에서 가져올 수 있습니다. 액세스 토큰을 소유하게 된 웹 응용 프로그램은 토큰이 만료될 때까지 Web API를 호출할 수 있습니다. 토큰이 만료되면 웹 응용 프로그램은 .NET용 ADAL을 통해 이전에 받은 새로 고침 토큰을 사용하여 새 액세스 토큰을 가져올 수 있습니다.

.NET용 ADAL은 다음과 같은 기능을 제공합니다.

  • 비동기 메서드: .NET용 ADAL은 토큰을 가져오는 각 메서드에 대한 비동기 변형을 지원하므로 인증 프로세스 중에 응용 프로그램의 반응성을 크게 높일 수 있습니다.

  • 토큰 획득: .NET용 ADAL은 다양한 ID 공급자, 프로토콜 및 자격 증명 종류를 사용하여 Azure AD와 Windows Server 2012 R2용 Windows Server ADFS에서 토큰을 얻는 과정을 용이하게 만듭니다. ADAL에서는 코드 몇 줄로 인증 사용자 환경을 포함한 전체 토큰 획득 과정을 관리할 수 있습니다. 또는 사용자나 응용 프로그램을 나타내는 원시 자격 증명을 제공할 수 있으면 ADAL이 사용자를 대신하여 토큰 획득을 관리합니다.

  • 토큰 캐시: .NET용 ADAL은 기본적으로 모든 액세스 토큰을 메모리 내 토큰 캐시에 저장하지만, 고유한 캐시 구현을 작성하거나 캐시 자체를 사용하지 않도록 설정할 수도 있습니다.

  • 자동 토큰 새로 고침: ADAL은 토큰 캐시 외에도 토큰 만료 시 토큰 자동 새로 고침을 지원합니다. ADAL은 토큰 캐시를 쿼리하여 토큰이 만료되었는지 확인한 다음 캐시된 새로 고침 토큰을 사용하여 새 토큰 받기를 시도합니다.

참고 항목

표시:
© 2015 Microsoft