콘텐츠로 이동

콘텐츠/역할별 접근 권한 정책

1. 무엇 / 왜

스터디룸·수업노트·과제·QNA 4종 콘텐츠에 대해 역할(비회원/선생님/학생/보호자)별 접근 권한을 단일 기준으로 정의. 보호자는 전용 진입점이 없고 연결된 자녀를 통해 간접 접근한다는 게 공통 축. 2026-05-03 정립.

2. 역할 공통 축

  • 비회원: PUBLIC 스터디룸 목록·프리뷰·초대 링크(token)만. 나머지 콘텐츠 접근 불가
  • 선생님: 자신이 소유한 룸·콘텐츠 전권(CRUD + 공개 정책 설정)
  • 학생: 생성 불가(자기 QNA 제외). 소속·지정·공개 정책에 따라 열람
  • 보호자: 생성/수정/삭제 불가. 연결 자녀의 접근 권한을 따라 일부 열람 + 일부 댓글

3. 콘텐츠별 정책

스터디룸 — PRIVATE / PUBLIC

선생님만 생성, 학생은 초대(이메일/링크)로만 입장. 보호자 전용 API 없음. → teams/engineering/domains/studyroom

수업노트 — visibility 6단계

TEACHER_ONLY · SPECIFIC_STUDENTS_ONLY · SPECIFIC_STUDENTS_AND_PARENTS · STUDY_ROOM_STUDENTS_ONLY · STUDY_ROOM_STUDENTS_AND_PARENTS · PUBLIC. 학생/보호자 열람 여부가 정책별로 갈림. 접근 가능하면 댓글 가능. → teams/engineering/domains/teaching-note

과제 — 별도 공개정책 없음, 배정(HomeworkStudent) 여부로 결정

학생은 배정된 과제만 조회·제출. 마감 후 제출은 LATE_SUBMIT. 같은 과제 다른 학생의 제출 완료 답안 조회 가능. 보호자는 자녀 배정분만. → teams/engineering/domains/homework

QNA — STUDENT_ONLY(기본) / STUDENT_AND_PARENT

학생 본인+선생님 기본. 보호자는 STUDENT_AND_PARENT일 때만 자녀 QNA 조회. 학생 추가 질문 시 PENDING, 선생님 답변 시 COMPLETED. → teams/engineering/domains/qna

4. 구현 메모

5. 관련

6. 열린 질문