본문으로 건너뛰기

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 수정