Microsoft Entra ID로 페더레이션에 대한 여러 도메인 지원
다음 설명서에서는 Microsoft 365 또는 Microsoft Entra 도메인으로 페더레이션하는 경우 여러 최상위 도메인 및 하위 도메인을 사용하는 방법에 대한 지침을 제공합니다.
여러 최상위 도메인 지원
Microsoft Entra ID로 여러 최상위 도메인을 페더레이션하려면 하나의 최상위 도메인으로 페더레이션할 때 필요하지 않은 몇 가지 추가 구성이 필요합니다.
도메인이 Microsoft Entra ID로 페더레이션되는 경우 Azure의 도메인에서 여러 속성이 설정됩니다. 중요한 한 가지가 IssuerUri입니다. 이 속성은 Microsoft Entra ID에서 토큰이 연결된 도메인을 식별하는 데 사용되는 URI입니다. URI는 아무 것도 확인할 필요가 없지만 유효한 URI여야 합니다. 기본값으로 Microsoft Entra ID는 URI를 온-프레미스 AD FS 구성에서 페더레이션 서비스 식별자의 값으로 설정합니다.
참고 항목
페더레이션 서비스 식별자는 페더레이션 서비스를 고유하게 식별하는 URI입니다. 페더레이션 서비스는 보안 토큰 서비스로 작동하는 AD FS의 인스턴스입니다.
PowerShell Get-MsolDomainFederationSettings -DomainName <your domain>
명령을 사용하여 IssuerUri를 볼 수 있습니다.
참고 항목
Azure AD와 MSOnline PowerShell 모듈은 2024년 3월 30일부터 더 이상 사용되지 않습니다. 자세히 알아보려면 사용 중단 업데이트를 참조하세요. 이 날짜 이후 이러한 모듈에 대한 지원은 Microsoft Graph PowerShell SDK 및 보안 수정 사항에 대한 마이그레이션 지원으로 제한됩니다. 사용 중단된 모듈은 2025년 3월 30일까지 계속 작동합니다.
Microsoft Graph PowerShell로 마이그레이션하여 Microsoft Entra ID(이전의 Azure AD)와 상호 작용하는 것이 좋습니다. 일반적인 마이그레이션 관련 질문은 마이그레이션 FAQ를 참조하세요. 참고 항목: MSOnline 버전 1.0.x는 2024년 6월 30일 이후 중단될 수 있습니다.
두 개 이상의 최상위 도메인을 추가하는 경우에 문제가 발생합니다. 예를 들어 Microsoft Entra ID와 온-프레미스 환경 간 페더레이션을 설정했다고 가정합니다. 이 문서의 경우 bmcontoso.com 도메인이 사용 중입니다. 두 번째 최상위 도메인, bmfabrikam.com이 추가되었습니다.
bmfabrikam.com 도메인을 페더레이션되도록 변환할 때 오류가 발생합니다. Microsoft Entra ID가 IssuerUri 속성에서 둘 이상의 도메인에 같은 값을 허용하지 않는 제약 조건을 갖기 때문입니다.
SupportMultipleDomain 매개 변수
이 제약 조건을 해결하려면 다른 IssuerUri를 추가해야 합니다. -SupportMultipleDomain
매개 변수를 사용하여 수행할 수 있습니다. 이 매개 변수는 다음 cmdlet과 함께 사용됩니다.
New-MsolFederatedDomain
Convert-MsolDomaintoFederated
Update-MsolFederatedDomain
이 매개 변수를 사용하면 Microsoft Entra ID가 도메인의 이름에 기반하도록 IssuerUri를 구성합니다. IssuerUri는 Microsoft Entra ID의 디렉터리에서 고유합니다. 매개 변수를 사용하여 PowerShell 명령을 성공적으로 완료할 수 있습니다.
-SupportMultipleDomain
은 여전히 adfs.bmcontoso.com의 페더레이션 서비스를 가리키도록 구성된 다른 엔드포인트를 변경하지 않습니다.
-SupportMultipleDomain
은 또한 AD FS 시스템이 Microsoft Entra ID용으로 발급된 토큰에 적절한 발급자 값을 포함하도록 합니다. 이 값은 사용자 UPN의 도메인 부분을 IssuerUri의 도메인(즉 https://{upn suffix}/adfs/services/trust
)으로 사용하여 설정됩니다.
따라서 Microsoft Entra ID 또는 Microsoft 365에 인증하는 동안 사용자 토큰의 IssuerUri 요소는 Microsoft Entra ID에서 도메인을 찾는 데 사용됩니다. 일치하는 항목이 없는 경우 인증이 실패합니다.
예를 들어 사용자의 UPN이 bsimon@bmcontoso.com인 경우 토큰의 IssuerUri 요소인 AD FS 발급자는 http://bmcontoso.com/adfs/services/trust
로 설정됩니다. 이 요소는 Microsoft Entra 구성에 일치하며 인증이 성공합니다.
다음은 이 논리를 구현하는 사용자 지정된 클레임 규칙입니다.
c:[Type == "http://schemas.xmlsoap.org/claims/UPN"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, ".+@(?<domain>.+)", "http://${domain}/adfs/services/trust/"));
중요
새로 추가하거나 기존 도메인을 변환하려고 하는 경우 SupportMultipleDomain 스위치를 사용하려면 이를 지원하도록 페더레이션된 트러스트를 설정해야 합니다.
AD FS와 Microsoft Entra ID 간 트러스트를 업데이트하는 방법
AD FS와 Microsoft Entra ID의 인스턴스 간 페더레이션된 신뢰 관계를 설정하지 않았을 경우 이 트러스트를 다시 만들어야 할 수 있습니다. -SupportMultipleDomain
매개 변수 없이 처음에 설치될 때 IssuerUri가 기본값으로 설정되기 때문입니다. 아래 스크린샷에서 IssuerUri는 https://adfs.bmcontoso.com/adfs/services/trust
로 설정되어 있습니다.
Microsoft Entra 관리 센터에 새 도메인을 성공적으로 추가한 다음, Convert-MsolDomaintoFederated -DomainName <your domain>
을 사용하여 변환하려고 하는 경우 다음과 같은 오류가 발생합니다.
-SupportMultipleDomain
스위치를 추가하려는 경우 다음 오류를 수신합니다.
원본 도메인에서 Update-MsolFederatedDomain -DomainName <your domain> -SupportMultipleDomain
을 실행하려고 해도 오류가 발생합니다.
아래 단계를 사용하여 최상위 도메인을 더 추가합니다. 이미 도메인을 추가하고 -SupportMultipleDomain
매개 변수를 사용하지 않은 경우 원본 도메인 제거 및 업데이트에 대한 단계를 시작합니다. 최상위 도메인을 아직 추가하지 않은 경우 Microsoft Entra Connect의 PowerShell을 사용하여 도메인을 추가하기 위한 단계를 시작할 수 있습니다.
다음 단계를 사용하여 Microsoft Online 트러스트를 제거하고 원본 도메인을 업데이트합니다.
- AD FS 페더레이션 서버에서 AD FS 관리를 엽니다.
- 왼쪽에서 트러스트 관계 및 신뢰 당사자 트러스트를 확장합니다.
- 오른쪽에서 Microsoft Office 365 ID 플랫폼 항목을 삭제합니다.
- Azure AD PowerShell 모듈이 설치된 컴퓨터에서 다음 PowerShell을 실행합니다.
$cred=Get-Credential
. - 페더레이션하는 Microsoft Entra 도메인에 대한 하이브리드 ID 관리자의 사용자 이름 및 암호를 입력합니다.
- PowerShell에서
Connect-MsolService -Credential $cred
명령을 입력합니다. - PowerShell에서
Update-MSOLFederatedDomain -DomainName <Federated Domain Name> -SupportMultipleDomain
명령을 입력합니다. 이 업데이트는 원본 도메인에 적용됩니다. 따라서 위의 도메인을 사용하는 경우Update-MsolFederatedDomain -DomainName bmcontoso.com -SupportMultipleDomain
과 같습니다.
PowerShell을 사용하여 새 최상위 도메인을 추가하려면 다음 단계를 사용합니다.
- Azure AD PowerShell 모듈이 설치된 컴퓨터에서 다음 PowerShell을 실행합니다.
$cred=Get-Credential
. - 페더레이션하는 Microsoft Entra 도메인에 대한 하이브리드 ID 관리자의 사용자 이름 및 암호를 입력합니다.
- PowerShell에서
Connect-MsolService -Credential $cred
명령을 입력합니다. - PowerShell에서
New-MsolFederatedDomain –SupportMultipleDomain –DomainName
명령을 입력합니다.
다음 단계에 따라 Microsoft Entra Connect를 사용하여 새 최상위 도메인을 추가합니다.
- 바탕 화면 또는 시작 메뉴에서 Microsoft Entra Connect를 시작합니다.
- "추가 Microsoft Entra 도메인 추가"를 선택합니다.
- Microsoft Entra ID 및 Active Directory 자격 증명을 입력합니다.
- 페더레이션에 대해 구성하려는 두 번째 도메인을 선택합니다.
- 설치를 클릭합니다.
새 최상위 도메인 확인
PowerShell Get-MsolDomainFederationSettings -DomainName <your domain>
명령을 사용하여 업데이트된 IssuerUri를 볼 수 있습니다. 아래 스크린샷은 페더레이션 설정이 원본 도메인 http://bmcontoso.com/adfs/services/trust
에 업데이트된 것을 보여줍니다.
새 도메인의 IssuerUri가 https://bmcontoso.com/adfs/services/trust
로 설정됩니다.
하위 도메인에 대한 지원
하위 도메인을 추가할 때 Microsoft Entra ID가 도메인을 처리하는 방식으로 인해 부모의 설정을 상속합니다. 따라서 IssuerUri가 부모와 일치해야 합니다.
따라서 예를 들어 bmcontoso.com이 있고 corp.bmcontoso.com을 추가한다고 가정합니다. corp.bmcontoso.com에서 사용자의 IssuerUri는 http://bmcontoso.com/adfs/services/trust
여야 합니다. 그러나 Microsoft Entra ID에 대해 위에서 구현된 표준 규칙은 토큰(발급자가 http://corp.bmcontoso.com/adfs/services/trust
임)을 생성합니다. 이 토큰은 도메인의 필수 값과 일치하지 않으며 인증은 실패합니다.
하위 도메인에 대한 지원을 사용하는 방법
이 동작을 해결하기 위해 Microsoft 온라인에 대한 AD FS 신뢰 당사자 트러스트를 업데이트해야 합니다. 이를 위해 사용자 지정 클레임 규칙이 사용자 지정 발급자 값을 생성할 때 사용자의 UPN 접미사에서 모든 하위 도메인을 제거하도록 구성해야 합니다.
다음 클레임을 사용합니다.
c:[Type == "http://schemas.xmlsoap.org/claims/UPN"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, "^.*@([^.]+\.)*?(?<domain>([^.]+\.?){2})$", "http://${domain}/adfs/services/trust/"));
[!참고 항목] 정규식에서 마지막 숫자는 루트 도메인에 있는 상위 도메인 수를 설정합니다. 여기서 bmcontoso.com이 사용되므로 2개의 상위 도메인이 필요합니다. 3개의 상위 도메인을 유지해야 한다면(즉, corp.bmcontoso.com) 숫자는 3입니다. 결과적으로 범위를 나타낼 수 있으며, 항상 최대 도메인 수와 일치합니다. "{2,3}"은 2~3개의 도메인(즉, bmfabrikam.com 및 corp.bmcontoso.com)과 일치됩니다.
하위 도메인을 지원하기 위해 사용자 지정 클레임을 추가하려면 다음 단계를 사용합니다.
- AD FS 관리를 엽니다.
- Microsoft 온라인 RP 트러스트를 마우스 오른쪽 버튼으로 클릭하고 클레임 규칙 편집 선택
- 세 번째 클레임 규칙을 선택하고 항목을 바꿉니다.
- 현재 클레임을 바꿉니다.
c:[Type == "http://schemas.xmlsoap.org/claims/UPN"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, ".+@(?<domain>.+)","http://${domain}/adfs/services/trust/"));
다음과 같이 바꿉니다.
c:[Type == "http://schemas.xmlsoap.org/claims/UPN"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/issuerid", Value = regexreplace(c.Value, "^.*@([^.]+\.)*?(?<domain>([^.]+\.?){2})$", "http://${domain}/adfs/services/trust/"));
- 확인을 클릭합니다. 적용을 클릭합니다. 확인을 클릭합니다. AD FS 관리를 닫습니다.
다음 단계
Microsoft Entra Connect를 설치했으므로 설치를 확인하고 라이선스를 할당할 수 있습니다.
자동 업그레이드, 실수로 인한 삭제 방지 및 Microsoft Entra Connect Health를 설치하여 사용할 수 있는 이러한 기능을 자세히 알아봅니다.
공통 주제인 스케줄러 및 동기화를 트리거하는 방법을 자세히 알아봅니다.
Microsoft Entra ID와 온-프레미스 ID 통합에 대해 자세히 알아봅니다.