[IdP] Okta → Internal DB 전환 (11.3.0 ~)

[IdP] Okta → Internal DB 전환 (11.3.0 ~)

1. 이슈 개요

제목: Okta 인증에서 QueryPie 내부 인증으로 전환
버전: 11.3.0 이상


2. 이슈 상세

요청 사항

Okta 인증 방식에서 QueryPie 내부 인증(Internal Database)으로 변경 요청

기존 Okta를 통해 동기화된 사용자 정보 및 적용된 정책 데이터를 그대로 유지하면서 전환

적용 범위

현재 Okta 인증을 사용 중인 모든 QueryPie 설치 환경


3. 전환 영향 분석

  • 사용자 계정: 모든 Okta 사용자 계정이 QueryPie 내부 계정으로 변환됨

  • 패스워드: Okta 계정의 패스워드는 QueryPie에 저장되지 않으므로, 모든 사용자에게 임시 패스워드(Querypie1!) 발급

  • 그룹 정보: Okta Group을 사용 중인 경우, 권한을 할당받은 Groups의 마이그레이션은 보장되지 않으므로 수동 삭제 작업 필요

  • 서비스 중단: 마이그레이션 작업 중 일시적인 서비스 다운타임 발생


4. 마이그레이션 절차

사전 준비

  • 마이그레이션 작업 일정 및 작업 시간 확보 (서비스 다운타임 발생)

  • 데이터베이스 백업 준비

마이그레이션 단계

  1. 사전 확인: Okta로 등록된 사용자 수 확인

  2. 서비스 중단: 사용자 추가 인입을 막기 위해 서비스 다운

  3. 데이터 백업: QueryPie 메타 DB 백업 수행

  4. 메타 DB 접속: QueryPie 메타 데이터베이스 접속

  5. 마이그레이션 쿼리 실행: 아래의 쿼리 순서대로 수행

-- 사용자 및 그룹 정보 업데이트 -- 사용자 패스워드를 임시값으로 설정하고 최초 로그인 시 변경 필요 설정 UPDATE querypie.users SET password = '$2a$11$bqaLkVQOtu3REVKGPFzDZ.mPH5lKNOONm1PLA6GlUZ2NFE7XUj7oS', password_change_required = 1, auth_provider = 'db', auth_provider_uuid = 'e01c80db-879c-11f0-9e57-66773bd8c9b7' WHERE auth_provider = 'okta' AND type = 'USER'; -- 그룹 정보 업데이트 UPDATE querypie.users SET auth_provider = 'db', auth_provider_uuid = 'e01c80db-879c-11f0-9e57-66773bd8c9b7' WHERE auth_provider = 'okta' AND type = 'GROUP';
  1. 서비스 재개: 서비스 재시작

  2. 기존 Okta IdP 제거:
    QueryPie 관리자 페이지 →
    System > Integrations > Authentication > Identity Providers
    에서 기존 Okta IdP 선택 후 Delete 수행

  3. 마이그레이션 검증: 기능 테스트 수행 및 정상 처리 확인


5. 사용자 공지사항

  • 모든 Okta 사용자는 임시 패스워드(Querypie1!)로 최초 로그인 필요

  • 최초 로그인 시 반드시 패스워드 변경 필요 (강제 변경 설정됨)

  • Okta Group을 사용했던 경우, 일부 권한이 정상적으로 마이그레이션되지 않을 수 있으므로 반드시 확인 필요


6. 주의사항

  • 마이그레이션 전 반드시 데이터베이스 백업 수행 필요

  • Okta Group을 사용했던 경우, UI에서 Group 정보 수동 확인 및 필요 시 수동 삭제 작업 수행

  • 마이그레이션 후 모든 권한이 정상적으로 이관되었는지 철저한 테스트 필요


7. 문제 발생 시 롤백 방법

  1. 백업한 메타 데이터베이스 복원

  2. 서비스 재시작

  3. Auth Provider가 Okta로 정상 설정되었는지 확인