공유 및 권한
컬렉션과 하위 자산의 접근을 사용자·그룹 단위로 제어합니다. 관계 기반 권한 모델(ReBAC)과 상한(Ceiling) 모델을 사용해, 컬렉션 권한이 하위 자산의 상한선으로 작동합니다.
용어 정책
화면 위치에 따라 용어를 일관되게 구분합니다.
| 위치 | 사용 용어 |
|---|---|
| 진입점(컨텍스트 메뉴, 액션 버튼) | 공유 / Share |
| 모달 타이틀, 상세 페이지 탭 | 공유 및 권한 / Share & Permissions |
| 모달 내부 섹션, 기술 문서 | 권한 / Permissions |
역할(Role)
다음 3단계 역할이 있습니다. 괄호 안은 화면에 표시되는 설명입니다.
| 역할 | 설명 | 주요 허용 |
|---|---|---|
| 소유자 (Owner) | 전체 관리 권한 | 설정 변경, 권한 부여·철회, 삭제 |
| 편집자 (Writer) | 내용 편집 가능 | 아이템 추가·수정·버전 생성 |
| 뷰어 (Reader) | 조회만 가능 | 조회, 쿼리(SELECT) |
상한(Ceiling) 모델
컬렉션에 부여된 권한은 하위 자산의 **상한선(Ceiling)**으로 작동합니다.
- 컬렉션에서 뷰어인 사용자는 하위 자산에서도 뷰어를 초과할 수 없습니다.
- 하위 리소스에 권한을 부여할 때, 멤버의 컬렉션 역할을 넘는 권한은 부여할 수 없습니다. 초과 불가 항목에는 상한 배지가 표시되고, 배지에 마우스를 올리면 "
{역할}이상의 권한은 부여할 수 없습니다."라는 설명이 나타납니다. - 컬렉션 멤버의 역할을 낮추거나 제거하면 그 영향이 하위 리소스로 전파됩니다. 변경 전에 영향 범위를 확인할 수 있는 모달이 표시됩니다(아래 멤버 탭 참고).
공유 다이얼로그 열기
다음 진입점에서 공유 및 권한 다이얼로그를 엽니다.
- 트리/테이블 우클릭 →
공유 - 상세 헤더의 공유 버튼
- 데이터셋·코드 등 자산은 상세 페이지의
공유 및 권한탭에서도 동일한 권한 UI를 사용합니다.
다이얼로그는 멤버와 하위 리소스 두 탭으로 구성됩니다(각 탭 라벨 옆에 건수가 표시됩니다).
멤버 탭
- 초대:
사람 또는 그룹 초대검색으로 대상을 추가합니다. 컬렉션에 새 사용자·그룹을 초대할 때는 디렉터리 검색(2자 이상 입력, 서버 조회)을 사용하며, 결과가 도착하는 대로 표시됩니다. 관리자가 검색 범위를 제한한 경우 같은 그룹이거나 이미 공유 중인 멤버만 검색됩니다. - 역할 선택: 소유자 / 편집자 / 뷰어.
- 멤버 목록:
접근 권한이 있는 사용자를 보여 줍니다. 직접 부여와 그룹 경유(상속)를 구분해 표시합니다. - 공개 권한:
모든 사용자에게 공개 읽기 권한을 부여하거나 해제할 수 있습니다. - 역할 변경 또는 제거: 멤버의 역할을 바꾸거나 제거하면 하위 리소스에 미치는 영향이 확인 모달로 안내됩니다.
- 권한 하향 확인: 영향받는 하위 리소스 건수와 함께, 새 역할을 초과하는 권한이 함께 하향됨을 안내합니다(현재 뷰어 이하인 리소스는 변경되지 않습니다).
- 접근 권한 제거 확인: 컬렉션의 모든 하위 리소스에서도 권한이 삭제됨을 안내합니다.
하위 리소스 탭
- 컬렉션에 속한 자산별 권한을 한 화면에서 관리합니다.
- 검색·필터로 자산을 찾고, 자산별로 권한을 부여합니다. 부여 대상은 컬렉션 권한이 있는 사용자·그룹으로 제한되며, 멤버의 컬렉션 역할(상한)을 초과하는 권한은 부여할 수 없습니다.
- 컬렉션에서 부여되어 자산으로 내려온 권한은
상속으로 표시되며, 이런 권한은 컬렉션 수준에서 관리합니다.
소유자 호버 미리보기
목록·트리·상세 패널 어디에서나 소유자 아바타에 마우스를 올리면 소유자 미리보기 팝오버가 표시됩니다.

- 사용자 소유자: 표시명·이메일·아바타와 함께 부여 경로(직접 / 그룹 경유)를 보여줍니다.
- 그룹 소유자: 그룹 이름과 부여된 역할.
- 공용(Public) 주체: "모든 사용자(Everyone)" 등의 식별과 의미를 함께 안내합니다.
목록 페이지의 소유자 컬럼은 컬렉션·데이터셋·코드·파이프라인·지식·대시보드·에이전트·온톨로지 등 모든 자원에서 동일한 방식으로 표시되어 일관된 UX를 제공합니다.
스코프 분류 (my / shared / other)
Collection Tree에서 컬렉션이 어느 스코프에 들어갈지는 백엔드가 제공하는 my_share_scope 값으로 결정됩니다.
| 값 | 트리 스코프 | 의미 |
|---|---|---|
owner | 내 컬렉션 | 현재 사용자가 소유자(Owner) 권한을 직접 보유 |
grant | 공유받은 컬렉션 | 편집자/뷰어 등 명시적 부여로 접근 가능 |
admin | 기타 컬렉션 (관리자만 보임) | 관리자 권한으로 보이는 그 외 컬렉션 |
스코프 분류는 권한 자체를 바꾸지 않습니다 — 단지 어디서 발견되느냐의 차이입니다.
컬렉션 경계를 넘는 이동
자산을 다른 컬렉션/폴더로 이동하면 이동 대상 컬렉션의 권한 상한이 새로 적용됩니다. 상한 검증은 서버에서 수행되며, 위반 시 해당 자산의 이동이 거부됩니다. 클라이언트가 이동 전에 미리 차단하지는 않으므로, 일괄 이동 중 일부 자산만 실패할 수 있습니다(실패 항목은 결과에 표시됩니다).
정책(Policies) 기반 세분화 접근 제어
역할 기반 공유 외에, 컬럼·행 수준의 조건을 포함한 정책(FGAC) 으로 접근을 더 세밀하게 제어할 수 있습니다. 자세한 내용은 정책 관리 문서를 참고하세요.
제한사항
- 컬렉션 간 자산 복사/Symlink는 지원하지 않습니다. 이동만 지원합니다.
- 폴더 자체의 컬렉션 간 이동은 아직 지원되지 않습니다.
- 데이터셋 내부의 행 단위 접근 제어는 정책(Policies) 기능으로 별도 관리합니다.