본문으로 건너뛰기

Plan-Role Mapping

1. 개요

이 문서는 IAM 도메인에서 정의된 플랜(Plan)과 각 플랜에 할당된 역할(Role) 간의 관계를 정의합니다. 플랜은 사용자가 속한 그룹(Group)에 연결되며, 해당 그룹의 구성원들은 플랜에 할당된 역할과 권한을 갖게 됩니다.

2. 플랜별 할당된 역할 매핑

2.1 치료 플랜 (Therapeutic Plan)

ID: plan.therapeutic

역할 목록:

  • roles/healthcare.patientUser: 환자 사용자 ( Link )

2.2 제한 플랜 (Limited Access Plan)

ID: plan.limitedAccess

역할 목록:

  • roles/healthcare.patientViewer: 환자 뷰어 ( Link )

2.3 샘플 플랜 (Sample Plan)

ID: plan.sample

역할 목록:

  • roles/healthcare.patientUser: 환자 사용자 ( Link )

2.4 의사 플랜 (Clinician Plan)

ID: plan.clinician

역할 목록:

  • roles/healthcare.clinicianAdmin: 임상의 관리자 ( Link )

2.5 의료 서비스 제공자 플랜 (Healthcare Provider Plan)

ID: plan.healthcareProvider

역할 목록:

  • roles/healthcare.providerViewer: 의료 제공자 뷰어 ( Link )

2.6 임상시험 플랜 (Clinical Trial Plan)

ID: plan.clinicalTrial[TrialID]

역할 목록:

  • roles/healthcare.patientUser: 임상시험 참여 환자 역할 (참여자가 환자일 경우) ( Link )
  • roles/clinical.coordinatorUser: 임상시험 코디네이터 ( Link )
  • roles/clinical.monitorViewer: 임상시험 모니터 ( Link )
  • roles/clinical.researchAdmin: 연구 책임자 ( Link )

2.7 내부 운영 플랜 (Internal Default Plan)

ID: plan.admin

역할 목록:

  • roles/admin.systemAdmin: 시스템 관리자 ( Link )
  • roles/development.engineerViewer: 개발자 ( Link )
  • roles/data.analystViewer: 데이터 분석가 ( Link )
  • roles/data.managerUser: 데이터 관리자 ( Link )
  • roles/product.managerUser: 제품 관리자 ( Link )
  • roles/crm.managerAdmin: CRM 관리자 ( Link )
  • roles/regulatory.specialistUser: 규제 담당자 ( Link )
  • roles/support.agentUser: 고객 지원 담당자 ( Link )

2.8 영업 데모 플랜 (Sales Demo Plan)

ID: plan.salesDemo

역할 목록:

  • roles/healthcare.patientViewer: 환자 뷰어 ( Link )

2.9 치료 완료 플랜 (Post-Treatment Plan)

ID: plan.postTreatment

역할 목록:

  • roles/healthcare.postTreatmentViewer: 치료 완료 환자 뷰어 ( Link )
    • 참고: 모든 생성 및 수정 권한은 제외됨
    • 용도: 치료 기간이 완료된 환자가 자신의 과거 데이터를 조회할 수 있도록 하는 아카이브 플랜

3. 플랜-역할 관계 관리

3.1 관계 정의 방식

  • 플랜과 역할 간의 관계는 PlanRole 연결 테이블에서 관리됩니다.
  • 플랜에는 여러 역할이 할당될 수 있으며, 역할은 여러 플랜에 포함될 수 있습니다(다대다 관계).
  • 각 플랜에 할당된 역할은 해당 플랜이 연결된 그룹에 속한 모든 사용자에게 적용됩니다.

3.2 역할 제한 및 유효 범위

  • 역할이 가진 권한은 해당 플랜 컨텍스트에서만 유효합니다.
  • 같은 역할이라도 다른 플랜에서는 일부 권한이 제한될 수 있습니다(예: 제한 플랜의 환자 역할).
  • 특정 역할의 권한은 외부 요소(예: 담당 환자 범위)에 의해 추가로 제한될 수 있습니다.

4. 플랜 전환 시나리오

4.1 치료 완료 후 플랜 전환

  • 전환 조건: 치료 플랜(plan.therapeutic) 또는 샘플 플랜(plan.sample)의 치료 기간이 완료된 경우
  • 전환 대상: 치료 완료 플랜(plan.postTreatment)
  • 전환 효과:
    • 모든 데이터 수정 권한 제거
    • 과거 치료 데이터에 대한 읽기 전용 접근 유지
    • 치료 이력 및 성과 데이터 조회 가능

4.2 자동 전환 규칙

  • 치료 플랜의 종료일이 도래하면 자동으로 치료 완료 플랜으로 전환
  • 전환 시 사용자에게 알림 발송
  • 기존 데이터는 보존되며 읽기 전용으로 전환

5. 변경 이력

버전날짜작성자변경 내용
0.1.02025-05-01bok@weltcorp.com최초 문서 생성 및 플랜-역할 매핑 정의
0.2.02025-05-15bok@weltcorp.comGCP IAM 스타일로 역할 ID 및 권한 형식 변경
0.3.02025-10-20jeff@weltcorp.com치료 완료 플랜 및 전환 시나리오 추가
0.4.02025-10-21jeff@weltcorp.com플랜 ID 수정