로그인 페이지 및 홈 영역 검색

업데이트: 2015년 6월 19일

Azure에 적용합니다.

Microsoft Azure Active Directory Access Control(Access Control 서비스 또는 ACS라고도 함)는 웹 사이트 또는 애플리케이션에 대한 페더레이션 로그인 페이지를 생성하는 두 가지 쉬운 방법을 제공합니다.

옵션 1: ACS-Hosted 로그인 페이지

ACS는 신뢰 당사자 애플리케이션에서 사용할 수 있는 기본 페더레이션된 로그인 페이지를 호스트합니다. 이 로그인 페이지는 네임스페이스의 WS-Federation 프로토콜 엔드포인트에서 호스팅되며, 다음과 같은 형식의 URL로 액세스할 수 있습니다.

https://<YourNamespace>.accesscontrol.windows.net/v2/wsfederation?wa=wsignin1.0&wtrealm=<YourAppRealm>&redirect=false

이 URL에서 YourNamespace>를 Access Control 네임스페이스의 이름으로 바꿉<습니다. 또한 이 URL에는 다음 매개 변수가 필요합니다.

  • wa - wsignin1.0으로 설정합니다.

  • wtrealm - 신뢰 당사자 응용 프로그램의 영역 값으로 설정합니다. 영역 값을 찾으려면 ACS 관리 포털에서 신뢰 당사자 애플리케이션을 클릭하고, 애플리케이션을 선택하고, 영역 필드를 확인합니다.

신뢰 당사자 응용 프로그램의 로그인 페이지 링크를 찾으려면

  1. Microsoft Azure 관리 포털(https://manage.WindowsAzure.com)로 이동하여 로그인한 다음 Active Directory를 클릭합니다. (문제 해결 팁: "Active Directory" 항목이 없거나 사용할 수 없음)

  2. Access Control 네임스페이스를 관리하려면 네임스페이스를 선택한 다음 관리를 클릭합니다. 또는 Access Control 네임스페이스를 클릭하고 네임스페이스를 선택한 다음 관리를 클릭합니다.

  3. 응용 프로그램 통합, 로그인 페이지를 차례로 클릭한 후 신뢰 당사자 응용 프로그램을 선택합니다.

    로그인 페이지 통합 페이지에 응용 프로그램의 로그인 페이지 옵션이 표시됩니다.

다음 이미지는 가상의 WS-Federation ID 공급자인 Windows Live ID(Microsoft 계정), Google, Yahoo!, Facebook 및 "Contoso Corp"를 지원하는 애플리케이션의 기본 로그인 페이지를 보여 줍니다.

ACS 2.0 login pages

WS-Federation ID 공급자 단추를 전자 메일 주소 텍스트 상자로 바꾸려면 WS-Federation ID 공급자의 로그인 페이지 링크에 전자 메일 주소 접미사를 추가합니다. 신뢰 당사자 응용 프로그램에 대해 많은 WS-Federation ID 공급자가 구성되어 있는 경우 이 방법을 사용하면 유용할 수 있습니다. 아래 그림은 샘플 페이지를 보여 줍니다.

ACS 2.0 login pages

ACS를 신뢰 당사자 애플리케이션과 신속하게 통합하려면 기본 ACS 호스팅 로그인 페이지를 사용합니다. 이 페이지의 모양과 레이아웃을 사용자 지정하려면 기본 로그인 페이지를 HTML 파일로 저장하고 응용 프로그램에서 사용자 지정할 수 있는 위치에 HTML 및 JavaScript를 복사하면 됩니다.

옵션 2: 애플리케이션의 일부로 사용자 지정 로그인 페이지 호스트

페더레이션된 로그인 페이지의 모양, 동작 및 위치를 완전히 제어할 수 있도록 ACS는 ID 공급자의 이름, 로그인 URL, 이미지 및 전자 메일 도메인 이름(전용)을 사용하여 JSON으로 인코딩된 메타데이터 피드를 제공합니다. 이 피드를 홈 영역 검색 메타데이터 피드라고 합니다.

샘플 사용자 지정 로그인 페이지

각 신뢰 당사자 응용 프로그램에 대해 샘플 HTML 로그인 페이지를 다운로드하려면

  1. Microsoft Azure 관리 포털(https://manage.WindowsAzure.com)로 이동하여 로그인한 다음 Active Directory를 클릭합니다. (문제 해결 팁: "Active Directory" 항목이 없거나 사용할 수 없음)

  2. Access Control 네임스페이스를 관리하려면 네임스페이스를 선택한 다음 관리를 클릭합니다. 또는 Access Control 네임스페이스를 클릭하고 네임스페이스를 선택한 다음 관리를 클릭합니다.

  3. 응용 프로그램 통합, 로그인 페이지를 차례로 클릭한 후 신뢰 당사자 응용 프로그램을 선택합니다.

  4. 로그인 페이지 통합 페이지에서 예제 로그인 페이지 다운로드를 클릭합니다.

샘플 HTML 코드는 ACS 호스팅 로그인 페이지의 HTML 코드와 동일합니다.

이 샘플에는 페이지 렌더링용 JavaScript 함수가 포함됩니다. 페이지 아래쪽의 스크립트 태그는 메타데이터 피드를 호출합니다. 사용자 지정 로그인 페이지에서는 이 예제에 나와 있는 것처럼 순수 클라이언트 쪽 HTML 및 JavaScript를 통해 메타데이터를 사용할 수 있습니다. JSON 인코딩을 지원하는 모든 언어로 사용자 지정 로그인 제어를 렌더링하는 데 피드를 사용할 수도 있습니다.

홈 영역 검색 메타데이터 피드

신뢰 당사자 응용 프로그램의 홈 영역 검색 메타데이터 피드 URL을 찾으려면

  1. Microsoft Azure 관리 포털(https://manage.WindowsAzure.com)로 이동하여 로그인한 다음 Active Directory를 클릭합니다. (문제 해결 팁: "Active Directory" 항목이 없거나 사용할 수 없음)

  2. Access Control 네임스페이스를 관리하려면 네임스페이스를 선택한 다음 관리를 클릭합니다. 또는 Access Control 네임스페이스를 클릭하고 네임스페이스를 선택한 다음 관리를 클릭합니다.

  3. 응용 프로그램 통합, 로그인 페이지를 차례로 클릭한 후 신뢰 당사자 응용 프로그램을 선택합니다.

URL은 애플리케이션의 로그인 페이지 통합 페이지에 옵션 2: 애플리케이션의 일부로 로그인 페이지를 호스트합니다.

다음은 샘플 홈 영역 검색 피드 URL입니다.

https://YourNamespace.accesscontrol.windows.net/v2/metadata/IdentityProviders.js?protocol=wsfederation&realm=YourAppRealm&reply_to=YourAppReturnURL&context=&version=1.0&callback=OptionalFunctionName

이 URL은 다음 매개 변수를 사용합니다.

  • YourNamespace - 필수 매개 변수로, Azure 네임스페이스 이름으로 설정합니다.

  • protocol - 필수 매개 변수로, 이는 신뢰 당사자 애플리케이션이 ACS와 통신하는 데 사용하는 프로토콜입니다. ACS에서 이 값은 wsfederation으로 설정해야 합니다.

  • realm - 필수 매개 변수로, ACS 관리 포털에서 신뢰 당사자 애플리케이션에 대해 지정한 영역입니다.

  • version - 필수 매개 변수로, ACS에서 이 값은 1.0으로 설정해야 합니다.

  • reply_to - 선택적 매개 변수로, ACS 관리 포털에서 신뢰 당사자 애플리케이션에 대해 지정한 반환 URL입니다. 생략하면 반환 URL의 값이 ACS 관리 포털에서 신뢰 당사자 애플리케이션에 대해 구성된 기본값으로 설정됩니다.

  • context - 선택적 매개 변수로, 토큰에서 신뢰 당사자 응용 프로그램으로 다시 전달할 수 있는 추가 컨텍스트입니다. ACS는 이러한 내용을 인식하지 못합니다.

  • callback - 선택적 매개 변수로, JSON 피드를 로드할 때 실행할 JavaScript 함수의 이름으로 설정할 수 있습니다. 이 함수로 전달되는 인수는 JSON 피드 문자열입니다.

참고

JSON 인코딩 메타데이터 피드는 변경될 수 있으므로 캐시하지 않는 것이 좋습니다.

JSON 피드 데이터 형식

앞서 설명한 것과 같은 유효한 매개 변수를 사용하여 메타데이터 피드를 요청하는 경우의 응답은 JSON 인코딩 배열의 배열을 포함하는 문서이며, 각 내부 배열은 다음 필드를 포함하는 ID 공급자를 나타냅니다.

  • Name - 사람이 읽을 수 있는 ID 공급자의 표시 이름입니다.

  • LoginUrl - 생성된 로그인 요청 URL입니다.

  • LogoutUrl - 최종 사용자가 로그인되어 있는 ID 공급자에서 로그아웃할 수 있도록 하는 URL입니다. 현재 라이브 ID(Microsoft 계정)에 대해서만 지원되고 Windows 다른 ID 공급자의 경우 비어 있습니다.

  • ImageUrl - ACS 관리 포털에 구성된 대로 표시할 이미지입니다. 이미지가 없는 경우 비어 있습니다.

  • EmailAddressSuffixes - ID 공급자와 연결된 전자 메일 주소 접미사 배열입니다. ACS에서 전자 메일 주소 접미사는 ACS 관리 포털을 통해 ID 공급자에 대해서만 구성할 수 있습니다. 구성된 접미사가 없는 경우 빈 배열이 반환됩니다.

다음 예제에서는 Windows 라이브 ID 및 AD FS 2.0이 신뢰 당사자 애플리케이션에 대해 구성된 경우 JSON 피드를 보여 줍니다. 사용자가 ACS 관리 포털에서 Windows 라이브 ID에 대한 이미지 URL을 설정하고 ID 공급자에 대한 전자 메일 도메인 접미사를 추가했습니다.

참고

쉽게 읽을 수 있도록 줄 바꿈이 추가되었으며, 예제를 간단하게 유지하기 위해 URL이 간결하게 표기되었습니다.

[ {
   "Name":"Windows Live ID",
   "LoginUrl":" https://...",
   "LogoutUrl":" https://...",
   "ImageUrl":"https://...",
   "EmailAddressSuffixes":[]
},
{
   "Name":"My ADFS 2.0 Provider",
   "LoginUrl":" https://...",
   "LogoutUrl":" https://...",
   "ImageUrl":"",
   "EmailAddressSuffixes":[“contoso.com”]
} ]

참고 항목

개념

ACS 2.0 구성 요소