이 문서에서는 개발자가 앱에서 Microsoft Entra 테넌트, Microsoft Entra 테넌트 또는 개인 Microsoft 계정을 가진 사용자만 허용할지 여부를 선택할 수 있는 방법을 설명합니다. Microsoft Entra에서 앱을 등록하는 동안 단일 테넌트 또는 다중 테넌트로앱을 구성할 수 있습니다. 앱이 필요한 권한만 요청하도록 최소 권한 액세스의 제로 트러스트 원칙을 확인합니다.
Microsoft ID 플랫폼은 특정 ID 유형에 대한 지원을 제공합니다.
- Microsoft Entra ID에 계정이 있는 경우, 이는 회사 또는 학교 계정입니다.
- Outlook.com, Hotmail, Live, Skype, Xbox 등에 계정이 있는 모든 사용자를 위한 MSA(Microsoft 개인 계정s)입니다.
- 파트너(조직 외부 사용자)에 대한 Microsoft Entra ID의 외부 ID입니다.
Microsoft Entra ID의 애플리케이션 등록에 필요한 부분은 지원되는 계정 유형을 선택하는 것입니다. 관리자 역할의 IT 전문가는 테넌트에서 앱에 동의할 수 있는 사용자를 결정하지만 개발자는 계정 유형에 따라 앱을 사용할 수 있는 사용자를 지정합니다. 테넌트에서 Microsoft Entra ID에 애플리케이션을 등록할 수 없는 경우 관리자는 다른 메커니즘을 통해 이러한 세부 정보를 사용자에게 전달할 수 있는 방법을 제공합니다.
애플리케이션을 등록할 때 지원되는 다음 계정 유형 옵션 중에서 선택합니다.
Accounts in this organizational directory only (O365 only - Single tenant)
Accounts in any organizational directory (Any Azure AD directory - Multitenant)
Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)
Personal Microsoft accounts only
이 조직 디렉터리의 계정만 - 단일 테넌트
이 조직 디렉터리에서만 계정을 선택하는 경우(O365 전용 - 단일 테넌트) 개발자가 앱을 등록한 테넌트에서 사용자 및 게스트만 허용합니다. 이 옵션은 LOB(기간 업무) 애플리케이션에 가장 일반적입니다.
모든 조직 디렉터리의 계정만 - 다중 테넌트
모든 조직 디렉터리(모든 Microsoft Entra 디렉터리 - 다중 테넌트)에서 계정을 선택하면 Microsoft Entra 디렉터리의 모든 사용자가 다중 테넌트 애플리케이션에 로그인할 수 있습니다. 특정 테넌트에서만 사용자를 허용하려면 id_token tid 클레임 이 허용된 테넌트 목록에 있는지 확인하여 코드에서 이러한 사용자를 필터링합니다. 애플리케이션은 조직 엔드포인트 또는 공통 엔드포인트를 사용하여 사용자의 홈 테넌트에서 사용자를 로그인할 수 있습니다. 게스트 사용자가 다중 테넌트 앱에 로그인하도록 지원하려면 사용자가 게스트인 테넌트에 대해 특정 테넌트 엔드포인트를 사용하여 사용자를 로그인합니다.
모든 조직 계정 및 개인 Microsoft 계정의 계정
조직 계정 및 개인 Microsoft 계정(모든 Microsoft Entra 디렉터리 - 다중 테넌트) 및 개인 Microsoft 계정(예: Skype, Xbox)에서 계정을 선택하면 사용자가 Microsoft Entra 테넌트 또는 소비자 계정의 기본 ID로 애플리케이션에 로그인할 수 있습니다. 앞에서 설명한 대로 다중 테넌트 앱과 동일한 테넌트 필터링 및 엔드포인트 사용량이 이러한 앱에 적용됩니다.
개인 Microsoft 계정만
개인 Microsoft 계정만 선택하면 소비자 계정이 있는 사용자만 앱을 사용할 수 있습니다.
개발자에게만 해당되지 않습니다.
애플리케이션 등록에서 앱에 로그인할 수 있는 사용자를 정의하는 동안 최종 말은 개별 사용자 또는 사용자의 홈 테넌트의 관리자로부터 나옵니다. 테넌트 관리자는 로그인할 수 있는 사용자보다 앱을 더 많이 제어하려고 하는 경우가 많습니다. 예를 들어 앱에 조건부 액세스 정책을 적용하거나 애플리케이션을 사용할 수 있는 그룹을 제어할 수 있습니다. 테넌트 관리자가 이 컨트롤을 사용하도록 설정하려면 Microsoft ID 플랫폼 엔터프라이즈 앱이라는 두 번째 개체가 있습니다. 엔터프라이즈 앱은 서비스 주체라고도 합니다.
다른 테넌트 또는 다른 소비자 계정의 사용자가 있는 앱
지원되는 계정 유형에는 다중 테넌트 애플리케이션을 위해 조직 디렉터리 사용자를 허용할 수 있는 조직 디렉터리의 계정 옵션이 포함됩니다. 즉, 사용자가 Microsoft Entra ID의 네이티브 ID를 사용하여 애플리케이션에 로그인할 수 있도록 허용합니다. 테넌트에서 처음 사용자가 앱에 인증하면 서비스 주체가 테넌트에 자동으로 만들어집니다.
애플리케이션 등록 또는 애플리케이션 개체는 하나뿐입니다. 그러나 모든 테넌트에는 사용자가 앱에 로그인할 수 있는 엔터프라이즈 앱 또는 SP(서비스 주체)가 있습니다. 테넌트 관리자는 테넌트에서 앱이 작동하는 방식을 제어할 수 있습니다.
다중 테넌트 앱 고려 사항
다중 테넌트 앱은 앱이 공통 또는 조직 엔드포인트를 사용하는 경우 사용자의 홈 테넌트에서 사용자를 로그인합니다. 앱에는 다음 다이어그램과 같이 하나의 앱 등록이 있습니다. 이 예제에서는 애플리케이션이 Adatum 테넌트에 등록됩니다. Adatum의 사용자 A와 Contoso의 사용자 B는 Adatum의 사용자 A가 Adatum 데이터에 액세스하고 Contoso의 사용자 B가 Contoso 데이터에 액세스하는 것으로 예상하여 앱에 로그인할 수 있습니다.
개발자는 테넌트 정보를 별도로 유지해야 합니다. 예를 들어 Contoso 데이터가 Microsoft Graph에서 온 경우 Contoso의 사용자 B는 Contoso의 Microsoft Graph 데이터만 볼 수 있습니다. Contoso의 사용자 B가 Adatum 테넌트의 Microsoft Graph 데이터에 액세스할 가능성은 없습니다. Microsoft 365에는 실제 데이터 분리가 있기 때문입니다.
다이어그램에서 Contoso의 사용자 B는 애플리케이션에 로그인할 수 있으며 애플리케이션의 Contoso 데이터에 액세스할 수 있습니다. 애플리케이션은 공통(또는 조직) 엔드포인트를 사용할 수 있으므로 사용자가 기본적으로 테넌트에 로그인하여 초대 프로세스가 필요하지 않습니다. 사용자는 애플리케이션을 실행하고 로그인할 수 있으며 사용자 또는 테넌트 관리자가 동의를 부여한 후에 작동합니다.
다음 단계
- 앱이 Microsoft Entra ID에 추가되는 방법과 이유는 애플리케이션 개체가 Microsoft Entra ID에 애플리케이션을 설명하는 방법을 설명합니다.
- Microsoft Entra ID의 애플리케이션 속성에 대한 보안 모범 사례 에는 리디렉션 URI, 액세스 토큰, 인증서 및 비밀, 애플리케이션 ID URI 및 애플리케이션 소유권과 같은 속성이 포함됩니다.
- ID에 대한 제로 트러스트 접근 방식을 사용하여 앱을 빌드 하면 사용 권한 및 액세스 모범 사례에 대한 개요를 제공합니다.
- 리소스에 액세스하기 위한 권한 부여를 획득 하면 애플리케이션에 대한 리소스 액세스 권한을 획득할 때 제로 트러스트를 가장 잘 보장하는 방법을 이해하는 데 도움이 됩니다.
- 위임된 권한 전략을 개발 하면 애플리케이션에서 사용 권한을 관리하는 최상의 방법을 구현하고 제로 트러스트 원칙을 사용하여 개발하는 데 도움이 됩니다.
- 애플리케이션 사용 권한 전략을 개발 하면 자격 증명 관리에 대한 애플리케이션 사용 권한 접근 방식을 결정하는 데 도움이 됩니다.