Microsoft Entra Connect 동기화: 선언적 프로비전 이해
이 문서에서는 Microsoft Entra Connect의 구성 모델을 설명합니다. 이 모델을 선언적 프로비저닝이라고 하며 구성을 쉽게 변경할 수 있습니다. 이 문서에서 설명하는 많은 항목은 고급이며 대부분의 고객 시나리오에는 필요하지 않습니다.
개요
선언적 프로비전은 원본 연결된 디렉터리에서 들어오는 개체를 처리하는 것입니다. 개체와 특성을 원본에서 대상으로 변환하는 방법을 결정합니다. 개체는 동기화 파이프라인에서 처리되고 파이프라인은 인바운드 및 아웃바운드 규칙에 대해 동일합니다. 인바운드 규칙은 커넥터 공간에서 메타버스로, 아웃바운드 규칙은 메타버스에서 커넥터 공간으로입니다.
동기화 파이프라인 예제를 보여 주는
파이프라인에는 여러 모듈이 있습니다. 각 개념은 개체 동기화의 한 가지 개념을 담당합니다.
파이프라인의 모듈을 보여 주는
- 원본, 원본 개체
- 범위, 범위 내 모든 동기화 규칙을 찾습니다.
- 에서을(를) 조인하고, 커넥터 공간과 메타버스의 관계를 결정합니다.
- 변환, 특성 변환 및 흐름 방법 계산
- 우선순위충돌하는 속성 기여를 해결합니다.
- 타겟, 대상 개체
범위
범위 모듈은 개체를 평가하고 범위에 있으며 처리에 포함되어야 하는 규칙을 결정합니다. 개체의 특성 값에 따라 다양한 동기화 규칙이 범위에 있는 것으로 평가됩니다. 예를 들어 Exchange 사서함이 없는 비활성화된 사용자에게는 사서함이 있는 활성화된 사용자와 다른 규칙이 있습니다.
개체의 범위 모듈을 보여 주는
범위는 그룹 및 절로 정의됩니다. 절은 그룹 내에 있습니다. 논리적 AND는 그룹의 모든 절 사이에 사용됩니다. 예를 들어 (부서 = IT 그리고 국가 = 덴마크). 논리적 OR은 그룹 간에 사용됩니다.
이 그림의 범위는 (부서 = IT 그리고 국가 = 덴마크) 또는 (국가 = 스웨덴)로 읽어야 합니다. 그룹 1 또는 그룹 2가 true로 평가되면 규칙이 적용됩니다.
범위 모듈은 다음 작업을 지원합니다.
수술 | 묘사 |
---|---|
같음, 다름 | 값이 특성의 값과 같은지 평가하는 문자열 비교입니다. 다중값 특성은 ISIN 및 ISNOTIN을 참조하세요. |
작다, 작거나 같다 | 값이 특성의 값보다 작은지 평가하는 문자열 비교입니다. |
포함, 포함하지 않음 | 특성의 값 내 어딘가에 값을 찾을 수 있는지 평가하는 문자열 비교입니다. |
STARTSWITH, NOTSTARTSWITH | 문자열 비교 연산은 값이 특성의 값 시작 부분에 있는지 확인합니다. |
ENDSWITH, NOTENDSWITH | 값이 특성의 값 끝에 있는지 평가하는 문자열 비교입니다. |
그레이터탄, GREATERTHAN_OR_EQUAL | 주어진 값이 속성의 값보다 큰지를 평가하는 문자열 비교입니다. |
ISNULL, ISNOTNULL | 특성이 개체에 없는지 평가합니다. 특성이 존재하지 않아서 null일 경우, 규칙이 적용 범위 내에 있습니다. |
ISIN, ISNOTIN | 값이 정의된 특성에 있는지 평가합니다. 이 작업은 EQUAL 및 NOTEQUAL의 다중값 변형입니다. 특성은 다중값 특성이어야 하며, 특성의 값 중 하나에서 값을 찾을 수 있는 경우 해당 규칙은 적용됩니다. |
ISBITSET (비트가 설정됨), ISNOTBITSET (비트가 설정되지 않음) | 특정 비트가 설정되어 있는지 평가합니다. 예를 들어 userAccountControl의 비트를 평가하여 사용자가 사용 또는 비활성화되었는지 확인할 수 있습니다. |
ISMEMBEROF(멤버인지 확인), ISNOTMEMBEROF(멤버가 아닌지 확인) | 이 값은 커넥터 공간의 그룹에 대한 DN을 포함해야 합니다. 개체가 지정된 그룹의 구성원이면 규칙이 범위에 있습니다. |
가입하다
동기화 파이프라인의 조인 모듈은 원본의 개체와 대상의 개체 간의 관계를 찾는 역할을 담당합니다. 인바운드 규칙에서 이 관계는 커넥터 공간의 개체가 메타버스의 개체와 관계를 찾는 것입니다.
간의 조인
목표는 다른 커넥터에 의해 생성된 개체가 메타버스에 이미 있는 경우, 그것이 연관되어야 하는지 확인하는 것입니다. 예를 들어 계정-리소스 포리스트에서는 계정 포리스트의 사용자가 리소스 포리스트의 사용자와 연결되어야 합니다.
조인은 커넥터 공간 개체를 동일한 메타버스 개체에 조인하기 위해 인바운드 규칙에서 주로 사용됩니다.
조인은 하나 이상의 그룹으로 정의됩니다. 그룹 내에 절이 있습니다. 논리적 AND는 그룹의 모든 절 사이에 사용됩니다. 논리적 OR은 그룹 간에 사용됩니다. 그룹은 위에서 아래로 순서대로 처리됩니다. 한 그룹이 대상의 개체와 정확히 일치하는 항목을 찾으면 다른 조인 규칙이 평가되지 않습니다. 0개 이상의 개체를 찾은 경우 처리는 다음 규칙 그룹으로 계속 진행됩니다. 규칙은 가장 명확한 것부터 시작하여 마지막에 모호한 것으로 만들어야 합니다.
이 그림에서의 연결은 위에서 아래로 처리됩니다. 먼저 동기 파이프라인은 직원 ID에 일치하는 항목이 있는지 확인합니다. 그렇지 않은 경우 두 번째 규칙은 계정 이름을 사용하여 개체를 함께 조인할 수 있는지 확인합니다. 일치하지 않는 경우 마지막 규칙으로, 사용자 이름을 사용하여 더 유연한 방법으로 일치를 시도합니다.
모든 조인 규칙이 평가되고 정확히 일치하는 항목이 없는 경우 설명 페이지의 링크 유형 사용됩니다. 이 옵션을 프로비전
"링크 유형" 드롭다운 메뉴가 열려 있음을 보여 주는
개체에는 조인 규칙 범위 내에서 하나의 동기화 규칙만 있어야 합니다. 여러 개의 동기화 규칙에 조인이 정의되어 있는 경우 오류가 발생합니다. 우선 순위는 조인 충돌을 해결하는 데 사용되지 않습니다. 개체는 특성이 같은 인바운드/아웃바운드 방향으로 흐르도록 범위 내에서 조인 규칙을 가져야 합니다. 인바운드 및 아웃바운드 특성을 모두 동일한 개체로 전달해야 하는 경우, 조인이 있는 인바운드 및 아웃바운드 동기화 규칙이 모두 있어야 합니다.
아웃바운드 조인은 대상 커넥터 공간에 개체를 프로비전하려고 할 때 특별한 동작을 하게 됩니다. DN 특성은 먼저 역방향 조인을 시도하는 데 사용됩니다. 대상 커넥터 공간에 동일한 DN이 있는 개체가 이미 있는 경우 개체가 조인됩니다.
조인 모듈은 새 동기화 규칙이 범위에 들어올 때 한 번만 평가됩니다. 개체가 조인되면 조인 조건이 더 이상 충족되지 않더라도 조인된 상태가 그대로 유지됩니다. 개체를 분리하려면 개체를 조인한 동기화 규칙이 범위에서 벗어나야 합니다.
메타버스 삭제
범위 내에 링크 유형이 프로비전 또는 StickyJoin로 설정된 동기화 규칙이 하나라도 있는 한, 메타버스 객체는 그대로 유지됩니다. StickyJoin은 커넥터가 메타버스에 새 개체를 프로비전할 수 없는 경우에 사용됩니다. 다만, 조인된 경우에는 메타버스 개체를 삭제하기 전에 소스에서 반드시 삭제해야 합니다.
메타버스 개체가 삭제되면 프로비전 표시된 아웃바운드 동기화 규칙과 연결된 모든 개체가 삭제로 표시됩니다.
변환
변환은 특성이 원본에서 대상으로 이동하는 방법을 정의하는 데 사용됩니다. 흐름은
특성 값 병합
특성 흐름에는 여러 다른 커넥터에서 다중값 특성을 병합해야 하는지 여부를 결정하는 설정이 있습니다. 기본값은 업데이트, 이는 우선 순위가 가장 높은 동기화 규칙이 승리해야 함을 나타냅니다.
또한 Merge 및 MergeCaseInsensitive이 있습니다. 이러한 옵션을 사용하면 다른 원본의 값을 병합할 수 있습니다. 예를 들어 여러 포레스트에서 proxyAddresses 특성을 병합하는 데 사용할 수 있습니다. 이 옵션을 사용하면 개체 범위에 있는 모든 동기화 규칙이 동일한 병합 형식을 사용해야 합니다. 한 커넥터에서 "업데이트"를 정의하고, 다른 커넥터에서 "병합"를 할 수 없습니다. 시도하면 오류가 발생합니다.
Merge와 MergeCaseInsensitive의 차이점은 중복 속성 값을 처리하는 방식입니다. 동기화 엔진은 중복 값이 대상 특성에 삽입되지 않도록 합니다. MergeCaseInsensitive을 사용하면 대소문자만 다른 중복 값은 존재하지 않습니다. 예를 들어 대상 특성에 "SMTP:bob@contoso.com" 및 "smtp:bob@contoso.com"가 모두 표시되지 않아야 합니다. 병합 정확한 값과 다름만 있을 수 있는 여러 값만 확인합니다.
바꾸기
특성 흐름 프로세스 제어
동일한 메타버스 특성에 기여하도록 여러 인바운드 동기화 규칙이 구성된 경우 우선 순위를 사용하여 승자를 결정합니다. 우선 순위가 가장 높은 동기화 규칙(숫자 값이 가장 낮음)이 값에 영향을 줍니다. 아웃바운드 규칙도 마찬가지입니다. 우선 순위가 가장 높은 동기화 규칙이 우선하며 연결된 디렉터리에 값을 적용합니다.
경우에 따라 값을 기여하는 대신 동기화 규칙이 다른 규칙의 동작 방식을 결정해야 합니다. 이 경우에 사용되는 몇 가지 특수 리터럴이 있습니다.
인바운드 동기화 규칙의 경우 리터럴 NULL 사용하여 흐름에 기여할 값이 없음을 나타낼 수 있습니다. 우선 순위가 낮은 다른 규칙은 값을 기여할 수 있습니다. 값에 영향을 주는 규칙이 없으면 메타버스 특성이 제거됩니다. 아웃바운드 규칙의 경우 NULL 모든 동기화 규칙이 처리된 후 최종 값이면 연결된 디렉터리에서 값이 제거됩니다.
AuthoritativeNull
특성 흐름은 IgnoreThisFlow을 사용할 수도 있습니다. 기여할 것이 없다는 점에서 NULL과 비슷합니다. 차이점은 대상에 이미 있는 기존 값을 제거하지 않는다는 것입니다. 특성 흐름이 한 번도 없었던 것과 같습니다.
예제는 다음과 같습니다.
에서 AD로 아웃 – 사용자 Exchange 하이브리드에서는 다음 흐름을 찾을 수 있습니다.
IIF([cloudSOAExchMailbox] = True,[cloudMSExchSafeSendersHash],IgnoreThisFlow)
이 식은 다음과 같이 읽어야 합니다. 사용자 사서함이 Microsoft Entra ID에 있는 경우 Microsoft Entra ID에서 Active Directory로 특성을 흐릅니다. 그렇지 않은 경우 Active Directory로 아무것도 다시 전달하지 마세요. 이 경우 기존 값을 AD에 유지합니다.
수입된값
특성 이름은 대괄호가 아닌 따옴표로 묶어야 하기 때문에 ImportedValue 함수는 다른 모든 함수와 다릅니다.
ImportedValue("proxyAddresses")
.
인바운드 동기화는 연결된 디렉터리에 도달하지 않은 특성이 결국 어느 시점에 도달한다고 가정합니다. 따라서 일반적으로 동기화는 해당 커넥터 공간에서 특성 값을 가져옵니다. 아직 내보내지 않았거나 내보내는 동안 오류가 발생한 경우에도 마찬가지입니다. 그러나 연결된 디렉터리에서 가져오는 동안 내보내고 확인된 값만 동기화하는 것이 중요합니다. "이 함수는 값이 성공적으로 내보내졌는지 확인된 경우에만 특성을 동기화해야 하는 여러 'In From AD/AAD' 기본 변환 규칙에서 찾을 수 있습니다."
이 함수의 예는 Hybrid Exchange에서 ProxyAddresses 특성 흐름을 다루는 동기화 규칙 ('AD에서 가져오기 – Exchange의 사용자 공통')에서 찾을 수 있습니다. 예를 들어 사용자의 ProxyAddresses가 추가되면 ImportedValue 함수는 다음 가져오기 단계에서 확인된 후에만 새 값을 반환합니다.
proxyAddresses
<- RemoveDuplicates(Trim(ImportedValue("proxyAddresses")))
이 함수는 대상 디렉터리가 내보낸 특성 값을 자동으로 변경하거나 삭제할 수 있고 동기화에서 확인된 특성 값만 처리하려는 경우에 필요합니다.
우선 순위
여러 동기화 규칙이 동일한 특성 값을 대상에 기여하려고 하면 우선 순위 값이 승자를 결정하는 데 사용됩니다. 우선 순위가 가장 높은 규칙(숫자 값이 가장 낮은 규칙)은 충돌에서 속성을 제공한다.
이 순서 지정을 사용하여 개체의 작은 하위 집합에 대한 보다 정확한 특성 흐름을 정의할 수 있습니다. 예를 들어, 기본 규칙은 활성화된 계정(User AccountEnabled)의 속성이 다른 계정보다 우선하도록 확실히 보장합니다.
커넥터 간에 우선 순위를 정의할 수 있습니다. 이를 통해 더 나은 데이터가 있는 커넥터가 먼저 값을 기여할 수 있습니다.
동일한 커넥터 공간의 여러 개체
동일한 커넥터 공간에 여러 개체를 동일한 메타버스 개체에 조인할 수 없습니다. 이 구성은 원본의 특성 값이 같더라도 모호한 것으로 보고됩니다.
다음 단계
- 선언적 프로비전 식이해에서 표현 언어에 대해 더 자세히 알아보세요.
- 기본 구성이해에서 선언적 프로비저닝이 기본적으로 사용되는 방법을 확인합니다.
- 기본 설정을 변경하는 방법에서 선언적 프로비저닝을 사용해 실제로 구성 변경을 하는 방법을 알아보세요.
- 사용자 및 연락처 이해
사용자와 연락처가 어떻게 함께 작동하는지 계속 읽어 줍니다.
개요 항목
- microsoft Entra Connect 동기화 : 동기화 이해 및 사용자 지정
- 온-프레미스 ID를 Microsoft Entra ID에 통합하기
참조 항목