Microsoft Entra 앱 관리 및 모니터링

완료됨

이제 첫 번째 Microsoft Entra 통합 애플리케이션을 구현했으므로 관리 및 유지 관리 작업에 포커스를 맞춘 기능의 보다 심층적인 측면을 탐색할 계획입니다. 또한 다중 테넌트 애플리케이션에 대한 추가 주의 사항을 확인하려고 합니다.

Microsoft Entra 통합 앱 구현에는 다음과 같은 특별한 고려 사항이 포함되며, 그중 일부에는 추가 관리 및 유지 관리 작업이 필요할 수 있습니다.

  • 애플리케이션과 관련된 해당 DNS(Domain Name Service) 레코드를 포함한 모든 리디렉션 URI(Uniform Resource Identifier)를 추적합니다.

  • 리디렉션 URI가 암호화된 엔드포인트에 해당하는지 확인하여 웹앱을 보호합니다.

  • 웹앱, 웹 API 및 디먼 앱에 대한 자격 증명을 유지 관리합니다.

  • 비밀을 사용하는 경우 관리를 자동화하는 것이 좋습니다(순환 포함).

  • 애플리케이션의 권한 범위를 구성할 때는 최소 권한 원칙을 적용합니다. 애플리케이션은 필요한 경우에만 추가 권한을 요청해야 합니다.

  • 가능하면 애플리케이션 권한보다는 위임된 권한을 사용합니다.

  • 개발 중에는 OAuth 2.0 및 Open ID와 같은 프로토콜에 대해 직접 프로그래밍하기 보다는 Microsoft 인증 라이브러리를 사용합니다.

    참고

    Microsoft 인증 라이브러리는 조건부 액세스, 디바이스 전체 SSO(Single Sign-On), 토큰 캐싱을 비롯한 다양한 인증 시나리오를 구현하는 데 사용하기 쉬운 방법을 제공합니다.

    참고 항목

    이 모듈은 클라우드 네이티브 애플리케이션을 Microsoft Entra ID와 통합하는 것과 관련된 완전한 지침과 모범 사례를 제공하기 위한 것이 아니라 Microsoft Entra 인증 및 다중 테넌트의 개념을 소개하기 위한 것입니다.

Microsoft Entra 다중 테넌트 시나리오를 구현할 때 모든 Microsoft Entra 테넌트의 로그인을 허용하도록 애플리케이션을 구성해야 합니다. 해당 테넌트의 사용자는 앱에서 요청한 관련 동의를 부여한 후 앱에 액세스할 수 있습니다.

다중 테넌트 앱 구현의 일환으로 필요한 네 가지 기본 요소가 있습니다.

  • 앱을 다중 테넌트로 등록
  • /common 엔드포인트에 요청을 보내도록 앱 구성
  • 여러 발급자 값을 관리하는 코드 추가
  • 사용자 및 관리자 동의에 응답하는 조항 포함

앱을 다중 테넌트로 등록

앱을 다중 테넌트로 등록하려면:

  1. 리소스, 서비스 및 문서 검색 텍스트 상자를 사용하여 앱 등록을 검색하고 결과 목록의 Azure 서비스 섹션에서 앱 등록을 선택합니다.

  2. 모든 등록을 선택하고 cna-app을 선택합니다.

  3. 지원되는 계정 유형 옵션을 선택한 다음 지원되는 계정 유형 모든 조직 디렉터리의 계정(모든 Microsoft Entra 디렉터리 - 다중 테넌트)에서 저장을 선택합니다.

Microsoft Entra ID에서는 앱의 앱 ID URI가 전역적으로 고유해야 합니다. 단일 테넌트 앱의 경우 앱 ID URI는 해당 테넌트 내에서 고유해야 합니다. 다중 테넌트 앱의 경우 전역적으로 고유해야 합니다. 이 요구 사항을 충족하려면 앱 ID URI의 호스트 이름이 Microsoft Entra 테넌트의 확인된 도메인과 일치해야 합니다.

/common 엔드포인트에 요청을 보내도록 앱 구성

단일 테넌트 앱에서 로그인 요청은 테넌트의 로그인 엔드포인트에 전송됩니다. 예를 들어 contoso.com의 경우 해당 엔드포인트는 https://login.microsoftonline.com/contoso.com입니다. 실제로 해당 엔드포인트를 대상으로 하는 요청은 해당 Microsoft Entra 테넌트에 대한 사용자 또는 게스트의 로그인을 허용합니다. 다중 테넌트 앱을 사용하면 어떤 테넌트가 사용될지 미리 결정할 수 없으므로 모든 Microsoft Entra 테넌트에 서비스를 제공하는 https://login.microsoftonline.com/common 엔드포인트를 사용하게 됩니다.

여러 발급자 값을 관리하는 코드 추가

웹 애플리케이션 및 웹 API는 Microsoft ID 플랫폼 토큰의 유효성을 검사할 수 있어야 합니다. 이렇게 하려면 발급자 값의 테넌트 ID 부분에 따라 유효한 발급자 값과 유효하지 않은 값을 결정하는 논리를 구현해야 합니다. 자세한 내용은 이 과정의 요약 단원에 언급된 문서를 참조하세요.

다중 테넌트 애플리케이션의 경우 앱의 초기 등록은 앱 개발자가 사용하는 Microsoft Entra 테넌트에서 이루어집니다. 다양한 Microsoft Entra 테넌트의 개별 사용자가 처음으로 앱에 로그인하면 애플리케이션에서 요청한 권한에 동의하라는 메시지가 각 사용자에게 표시됩니다. 그러면 각 테넌트에 서비스 주체가 만들어집니다. 이 요구 사항을 해결하기 위한 조항에 대한 자세한 내용은 이 과정의 요약 단원에 언급된 문서를 참조하세요.