When re-created an AD user or group permission is not working

[현상]

SharePoint 내 AD 의 도메인 그룹 혹은 사용자를 추가한 상태에서 해당 object 를 삭제하고 동일한 ID 로 다시 생성한 경우 접근을 할 수 없음

[점검 내역]

  1. 조직 구성
    image
    1. TestOU1
      1. TestOU1_Sub1
        1. TestOU1_Sub1_User1
        2. TestOU1_Sub1_User2
      2. TestOU1_Sub2
        1. TestOU1_Sub2_User1
        2. TestOU1_Sub2_User2
      3. TestOU1_User1
      4. TestOU1_User2
    2. TestOU2
      1. TestOU2_User1
      2. TestOU2_User2
  2. 사이트 구성
    1. extranet.spnote.com
      - TestOU1, TestOU2 도메인 그룹에 읽기 권한 추가
      1. TeamSite_OU1
        - TestOU1 도��인 그룹에 읽기 권한 추가
      2. TeamSite_OU2
        - TestOU2 도메인 그룹에 읽기 권한 추가
  3. 테스트
    1. 사용자 이동
      - 그룹: TestOU1_User2 를 TestOU2 로 이동 (정상 동작)
      - OU 만 이동 시 권한의 변화 없음 (그룹 간 이동이 아님)
      1. 이동 전
        clip_image001[9]
      2. 이동 후
        clip_image002[6]
    2. 사용자 삭제: TestOU1_User2
      - 재 인증 요청함
      clip_image003
    3. 사용자만 다시 추가: TestOU1_User2
      - 인증은 했으나 Access Denied 됨
      clip_image004[6]
      - TestOU1 그룹에 TestOU1_User2 추가 (정상 동작)
      clip_image005
    4. TestOU1 그룹 삭제
      clip_image006[6]
      - 접근 불가
      clip_image007[6]
    5. TestOU1 그룹 재 생성, 사용자 멤버 재 구성 후에도 접근 불가
      - 브라우저 재 시작해도 접근 불가
      - IIS 에서 App Recycle, Reset 해도 접근 불가
      image

      - User Profile compile 은 VM 에 구성되지 않아서 테스트 불가 (과거 운영에서 시도 시 되지 않았음)
      - The User Profile Replication Engine will not replicate distribution lists or security groups,
      but it will replicate site memberships (for example, My Sites)
      .

      - 관리자로 로그인하여 사이트 접근 권한 확인 시 접근 불가 상태 확인
      clip_image001[11]


[원인]

SharePoint 에서는 동일한 ID 의 계정이지만 내부에서 관리하는 SID(Security Identifier) 가 다르므로 다른 권한으로 인식하여 Object 가 다시 추가되더라도 접근을 할 수 없는 현상.

[해결]

  1. Migration 처리
    - AD Groups cannot be used to assign permissions in SharePoint
    - 재 생성된 사용자 혹은 그룹의 Migration 처리
    clip_image001[13]

    - SharePoint 내부 DB 에서 Guid 필드값이 업데이트 됨
    clip_image002
  2. 이후 정상 접속됨

 

 

[참고] 상세 테스트
- Domain Group, Domain Group 내
사용자, 직접 추가된 사용자 삭제

  1. 그룹 권한(TestOU1_Sub2)  삭제
    1. (#1) 그룹 권한(TestOU1_Sub2) 추가 시 레코드 추가됨
      clip_image001[15]
      - Domain Group 일 경우 Token 필드에, 그룹 내 사용자는 ExternalToken, ExternalTokenLastUpdated 필드에 값이 있음
    2. (#2) 그룹 내 사용자가 최초 로그인 시 레코드 추가됨
      -  TestOU1_Sub2_User2
    3. (#1) TestOU1_Sub2 그룹 삭제 시
      - TestOU1_Sub2_User2 접근 불가
      clip_image002[8]
      - DB 값 변화 없음
      clip_image003[6]
    4. (#1) TestOU1_Sub2 그룹 재 생성, 멤버 구성
      - 변화 없음 (3번과 동일함)
    5. Group Migration
      clip_image004
      - SystemID 변경 됨
      clip_image005[4]
    6. 정상 로그인 됨
  2. 그룹 권한(TestOU1_Sub2)  내의 AD 계정(TestOU1_Sub2_User2) 삭제
    - 변화 없음
    clip_image006[8]
    1. 페이지 접속 시 인증창 나타남
      - DB 값 변화 없음
      clip_image007
    2. AD Object 재 생성 및 TestOU1_Sub2 그룹에 멤버로 추가
    3. 정상 로그인 됨
      - SharePoint 에 추가된 그룹 내 사용자는 Migration 하지 않아도 재 인식
      - 사용자는 SharePoint 에 직접 추가된 것이 아님
    4. 기존 레코드의 tp_Deleted, tp_ExternalToken, ExternalTokenLastUpdated 값 변경되고 신규 레코드가 추가됨
      clip_image008[6]
  3. AD User (SID_Test2, 3) 삭제
    - TeamSite4 의 Members 그룹에 SID_Test2, SID_Test3 사용자 추가
    image
    - SID_Test2 는 삭제, SID_Test3 는 삭제 후 재 생성하고 MigrateUser 수행

    1. 두 계정 로그인 후
      image
    2. 두 계정 삭제 후
      - 접속 시 인증창 나타남
      image
      - DB 변화 없음
    3. AD User(SID_Test3) 만 다시 생성
      - 사이트 접속 시 Access Denied
      image
    4. User migration
      1. SID_Test2
        - 사용자 존재하지 않거나 유일하지 않다고 표시됨
        clip_image001[19]

        - 접속 시 인증창 나타남
        image
      2. SID_Test3
        - 정상 적용됨
        clip_image001[21]

        - 정상 로그인
        clip_image002[10]
      3. SharePoint 권한: 변화 없음
        image