각 프레임은 데스크톱 웹 페이지의 레이아웃·핵심 영역·주요 컴포넌트 배치를 로우파이로 나타냅니다. 색·실데이터·정밀 시안 아님. 표·폼 안 예시값은 DE22-1 ui-sketch 샘플입니다. (SCR-CM-004 는 본 섹션에 정의 없음)

SCR-CM-001로그인🎨 Figma: node 119:1838

비로그인 진입 · 2열 스플릿 카드(좌: 브랜드/소개 패널 · 우: 로그인 폼) · JWT 인증(accessToken+refreshToken) · 비밀번호는 RSA-OAEP-SHA256 암호화 전송 · 실패 5회 시 30분 자동 잠금 · [비밀번호를 잊으셨나요?] → SCR-CM-008 (권한: 비로그인)

진입 — 직접 URL / 비로그인 상태에서 보호 페이지 접근 시 자동 redirect

  1. 브랜드/소개 패널 — 좌측 아이덴티티 영역. 로고·타이틀·제품 미리보기 이미지로 구성되며 비로그인 상태 전용(Figma node 119:1838).
  2. 아이디 입력 — 필수. 비밀번호와 함께 IF-CM-AUTH-004 로 전송된다.
  3. 비밀번호 입력 — 필수. IF-CM-AUTH-004 공개키로 RSA-OAEP-SHA256 암호화 후 전송(평문 금지).
  4. 비밀번호를 잊으셨나요? — 클릭 시 SCR-CM-008 비밀번호 재설정 화면으로 이동.
  5. 로그인 상태 유지 — 체크 시 refreshToken 유지 기간이 14일→30일로 연장(SCR-CM-007 세션 정책과 연동).
  6. 오류/잠금 안내 — 실패 3회부터 카운터 노출, 5회 도달 시 30분 자동 잠금(계정 잠금 정책, SCR-CM-007).
  7. 로그인 버튼 — 제출. 성공 시 JWT accessToken+refreshToken 발급 후 프로젝트 대시보드로 이동.
관련 API Swagger UI ↗
  • POST/api/auth/login — 아이디+RSA암호화 비밀번호로 인증, JWT accessToken/refreshToken 발급
  • GET/api/auth/public-key — IF-CM-AUTH-004 RSA 공개키 발급, 비밀번호 평문 전송 금지 정책상 로그인 폼 제출 전 필수 선행 호출. AuthController.kt:72 구현됨(springdoc 자동 노출)
1Unique System
Window & Curtain Wall
WIMS 2.0
창호 프로젝트의 자재, 제품, BOM, 공정 정보를 하나의 운영 화면에서 이어서 관리합니다.
제품 화면 미리보기 이미지
(프로젝트 목록 대시보드)
로그인
2아이디 * 아이디
3비밀번호 * 4비밀번호를 잊으셨나요?
비밀번호
5로그인 상태 유지
6⚠ (실패·잠금 상태에서만 표시) 로그인 실패 (3/5회) · 5회 초과 시 30분 로그인 제한
7로그인

🎨 Figma 상태 5종(node 119:1838): default · hover/typing · filled · error(아이디·비밀번호 필드 빨간 테두리 + 실패 횟수 라벨) · locked(30분 잠금 안내 라벨). 오류·잠금 라벨은 [로그인 상태 유지] 체크박스와 [로그인] 버튼 사이에 노출. 비밀번호는 IF-CM-AUTH-004 공개키로 RSA-OAEP-SHA256 암호화 후 전송(평문 금지).

SCR-CM-002비밀번호 변경

사용자 메뉴 진입(만료 시 자동 전환) · 현재/새 비밀번호 모두 RSA 암호화 전송 · 실시간 규칙 검증(✓ 충족 / ✗ 미충족) · ⦿ 전역 정책은 관리자가 SCR-CM-007 에서 조정 (권한: 로그인 사용자)

진입 — 계정 설정(SCR-CM-009) [비밀번호] 탭 / 비밀번호 만료 시 자동 전환

  1. 현재 비밀번호 — 필수. 본인 확인용, RSA 암호화 전송.
  2. 새 비밀번호 — 필수. RSA 암호화 전송, 입력 중 아래 규칙 칩이 실시간 갱신된다.
  3. 비밀번호 확인 — 필수. 새 비밀번호와 일치해야 [변경] 버튼 활성.
  4. 비밀번호 규칙 칩 — ✓/✗ 는 입력값 기준 실시간 검증, ⦿ 는 시스템 전역 정책(사용자 변경 불가, SCR-CM-007 에서 관리자만 조정).
  5. 변경 버튼 — 제출. 성공 시 재로그인 없이 세션 유지, 실패(정책 미충족)면 규칙 칩으로 사유 표시.
관련 API Swagger UI ↗
  • PUT/api/cm/me/password — 본인 현재/새 비밀번호 변경 제출
  • GET/api/cm/settings/{category} — 현재 비밀번호 정책값 조회, 실시간 규칙 칩(⦿ 항목) 표시 기준
  • GET/api/auth/public-key — IF-CM-AUTH-004 RSA 공개키 발급, 현재/새 비밀번호 암호화 전송에 필요. AuthController.kt:72 구현됨(springdoc 자동 노출)
내 계정  ›  비밀번호 변경
CMD+K 검색
비밀번호 변경 폼
비밀번호 변경
1현재 비밀번호 *현재 비밀번호
2새 비밀번호 *새 비밀번호
3비밀번호 확인 *비밀번호 재입력
4비밀번호 규칙 (현재 정책 · 실시간 검증)
✓ 10자 이상 ✗ 특수문자 포함 ✓ 영문+숫자
⦿ 3가지 이상 조합 필수 ⦿ 90일 만료 ⦿ 최근 5개 재사용 금지

✓ 충족 · ✗ 미충족(실시간) · ⦿ 시스템 전역 정책(사용자 변경 불가 — SCR-CM-007 에서 관리자가 조정)

액션
취소5변경
SCR-CM-003사용자 관리

좌측 목록 + 우측 상세 패널(행 클릭 → URL /admin/users/:id 갱신) · R12-C 7종 ROLE 모델 · 부서 자유텍스트(선택, 최대 64자) · 정지 사용자 휴지통 토글 (권한: ROLE_ADMIN · FR-CM-002/004)

진입 — 사이드바 > 시스템관리 > 사용자 관리

  1. 검색 — 이름·아이디 부분일치 검색, 목록 조회 파라미터로 전달.
  2. + 사용자 — 신규 사용자 등록(빈 상세 패널 오픈).
  3. 사용자 목록 — 행 클릭 시 우측 상세 패널이 로드되고 URL이 /admin/users/:id 로 갱신된다.
  4. 정지된 사용자 포함 — 기본은 활성 사용자만 노출. 체크 시 status=SUSPENDED(휴지통) 대상도 목록에 포함.
  5. 상세 패널 기본정보 — 이름·이메일·연락처·소속팀(권한 결정 조직 단위)·부서(자유텍스트, 선택, 최대 64자) 편집. 아이디는 수정 불가. 이메일은 여기서 선택이며 비우고 저장하면 지운다(3-상태) — 등록 모달의 필수와 규칙이 다르다.
  6. 권한 설정 — R12-C 7종 ROLE 모델([변경 ROLE]로 수정). 자기 자신의 ROLE 변경은 403 차단.
  7. 비번 초기화 — 임시 비밀번호 발급 후 메일 발송.
  8. 삭제 — status=WITHDRAWN 전환(soft delete). 재활성화는 ROLE_ADMIN 전용.
  9. 사용자 등록 모달 — [+ 사용자] 클릭 시 아이디·이름·이메일·부서(선택)·소속팀·역할을 입력해 신규 계정을 생성. 여기서 이메일은 필수다 — 빈 칸으로는 등록할 수 없다.
관련 API Swagger UI ↗
  • GET/api/cm/users — 사용자 목록 조회(이름/아이디 검색, 정지 사용자 포함 토글 파라미터)
  • POST/api/cm/users — '+ 사용자' 등록
  • GET/api/cm/users/{id} — 행 클릭 시 우측 상세 패널 로드
  • PUT/api/cm/users/{id} — 기본 정보(이름·이메일·연락처·소속팀·부서) 저장
  • PATCH/api/cm/users/{id}/role — '변경 ROLE' 권한 설정 변경
  • POST/api/cm/users/{id}/reset-password — '비번 초기화' 임시 비밀번호 발급/메일 발송
  • PATCH/api/cm/users/{id}/active — '삭제' 버튼, status=WITHDRAWN 전환(soft), 재활성화 시 역전환
시스템관리  ›  사용자 관리
CMD+K 검색
검색 · 액션
1이름/아이디 검색 검색 2+ 사용자
3사용자 목록 (행 클릭 → 우측 상세 패널)
이름아이디역할소속팀상태최종로그인
김진호jinho.kadmin개발팀JOINED2026-04-28 09:15
김수연suyeon.kadmin개발팀JOINED2026-04-27 18:02
유미숙misuk.yadmin유니크JOINED-
4정지된 사용자 포함 (휴지통 · status=SUSPENDED)
SCR-CM-005그룹(팀) 관리

그룹 목록 · 행 좌측 ▼/▶ 펼침 시 소속 인원 목록 · 멤버 다중선택 batch 추가 · 활성/비활성 토글(soft disable — 회색조+(비활성) 배지, 신규 배정 차단·기존 멤버 유지) · 삭제는 멤버 0일 때만 (권한: ROLE_ADMIN)

진입 — 사이드바 > 시스템관리 > 그룹 관리

  1. + 그룹 추가 — 신규 그룹(팀) 생성.
  2. 그룹 목록 — 좌측 ▼/▶ 클릭으로 펼침/접힘 토글, 그룹명·소속 인원·기본 역할·생성일 표시.
  3. 펼침 영역 — 선택 그룹의 소속 인원 목록과 그룹 액션(추가/토글/수정/삭제)이 노출.
  4. + 멤버 추가 — 다중선택+검색으로 여러 사용자를 일괄(batch) 추가.
  5. 활성/비활성 토글 — soft disable. 비활성 시 회색조+(비활성) 배지 노출, 신규 배정만 차단하고 기존 멤버·역할은 유지.
  6. 그룹 수정/삭제 — 수정은 그룹명·기본역할 변경, 삭제는 소속 인원이 0명일 때만 허용(hard delete).
  7. 비활성 전환 안내 callout — 활성/비활성 토글 조작 시 노출되는 운영자 안내(신규 배정 차단·기존 멤버 유지·재활성 가능).
  8. 그룹 추가/수정 모달 — 그룹명·기본 역할 입력 + 소속 인원 다중선택(체크박스 목록+검색+일괄 추가)으로 멤버 구성. [+ 그룹 추가]는 신규 생성, [그룹 수정]은 동일 UI에 기존 값을 채워 진입.
관련 API Swagger UI ↗
  • GET/api/cm/groups — 그룹 목록 조회
  • POST/api/cm/groups — '+ 그룹 추가'
  • GET/api/cm/groups/{groupCode}/members — 행 펼침(▼) 시 소속 인원 목록 조회
  • POST/api/cm/groups/{groupCode}/members — '+ 멤버 추가' 다중선택 일괄(batch) 추가
  • PUT/api/cm/groups/{groupCode} — '그룹 수정' 저장 및 활성/비활성 토글(active) 반영
  • DELETE/api/cm/groups/{groupCode} — '그룹 삭제' — 멤버 0명일 때만
시스템관리  ›  그룹 관리
CMD+K 검색
액션
1+ 그룹 추가
2그룹 목록 (행 좌측 ▼/▶ 펼침)
그룹명소속 인원기본 역할생성일
개발팀8명ROLE_PM_VIEWER2026.03.23
유니크2명ROLE_PM_VIEWER2026.03.23
MES팀2명ROLE_MES_READER2026.03.23
관리자1명ROLE_ADMIN2026.03.23
3펼침 영역 (개발팀) · 소속 인원 + 그룹 액션
개발팀

김진호(BE), 이율희(BE), 김수연(FE), …

4+ 멤버 추가 (다중선택 · 검색 · 일괄) 5활성 6그룹 수정 그룹 삭제
7⚠ 운영자 안내: 비활성 전환 시 사용자 등록(SCR-CM-003) 그룹 드롭다운에서 즉시 제외됩니다. 기존 멤버의 소속·역할은 자동 회수되지 않으며, 재활성 토글로 언제든 복구할 수 있습니다.

비활성 전환 = soft disable(신규 admin 배정 차단 + 목록 회색조·(비활성) 배지, 기존 멤버·역할 유지) · 삭제 = 멤버 0일 때만 hard delete

SCR-CM-006코드 관리

전사 코드 카탈로그(CODE_CATALOG) 관리 · 좌 그룹 트리 + 우 코드 목록 · SCR-PM-010 4계층 분류·SCR-PM-011 modelCode 세그먼트 값 공급 · 사용 중 코드 삭제 차단(RESTRICT) (권한: ROLE_ADMIN · FR-CM-004)

진입 — 사이드바 > 시스템관리 > 코드 관리

  1. 코드 그룹 트리 — 자재/제품/공정 관련 3계층 그룹(UNIT·L1_FORM·PRC_TYPE 등)을 좌측에서 선택하면 우측 코드 목록이 갱신된다.
  2. + 코드 그룹 추가 — 신규 코드 그룹 생성.
  3. 선택 그룹 코드 목록 — 현재 선택 그룹(예: UNIT)의 코드값 목록. 이 값이 SCR-PM-010 4계층 분류 필터와 SCR-PM-011 modelCode 세그먼트 드롭다운의 공급원.
  4. + 코드 추가 — 선택 그룹에 신규 코드값 등록.
  5. 정렬 컬럼 — 드래그 또는 값 직접 수정으로 노출 순서 변경. 사용 중인 코드는 삭제가 차단(RESTRICT)된다.
  6. 코드 그룹 추가 모달 — 그룹 ID·그룹명을 입력해 신규 코드 그룹 생성.
  7. 코드 추가 모달 — 코드값·명칭·정렬·활성 여부를 입력해 선택 그룹에 신규 코드값 등록.
  8. 사용 처 보기 팝오버 — 코드 행 클릭 시 참조 중인 화면 목록을 팝오버로 표시. 참조가 있으면 삭제(RESTRICT) 차단.
관련 API Swagger UI ↗
  • GET/api/cm/codes/categories — 좌측 코드 그룹 트리 조회
  • POST/api/cm/codes/categories — '+ 코드 그룹 추가'
  • GET/api/cm/codes — 선택 그룹(UNIT)의 코드 목록 조회
  • POST/api/cm/codes — '+ 코드 추가'
  • PATCH/api/cm/codes/reorder — 정렬 컬럼 드래그/직접 수정 반영
  • PUT/api/cm/codes/{codeId} — 코드 행 수정
  • DELETE/api/cm/codes/{codeId} — 코드 삭제(사용 중이면 RESTRICT 차단)
  • GET/api/cm/codes/{codeId}/usage — IF-CM-COD-001 코드 사용처 조회, '사용 처 보기'(어느 화면·제품/자재/공정이 이 코드를 참조 중인지) 및 삭제 RESTRICT 판단(deletable 필드) 근거. CodeController.kt:146 구현됨(springdoc 자동 노출)
시스템관리  ›  코드 관리
CMD+K 검색
1코드 그룹 트리
▼ 자재 관련 ├ UNIT (단위) ├ MAT_TYPE (자재유형) └ MAT_SPEC (규격유형) ▼ 제품 관련 ├ L1_FORM (형식) ├ L2_GRADE (등급) ├ L3_GLAZING (형태) ├ L4_DIM (치수크기) └ BRAND / SERIES / REVISION ▼ 공정 관련 └ PRC_TYPE (공정분류)
2+ 코드 그룹 추가
3선택 그룹 코드 목록 — UNIT (단위)
코드명칭5정렬
EA1
m미터2
kg킬로그램3
SET세트4
ml밀리리터5
4+ 코드 추가

코드 행 클릭 → 사용처 보기(제품·자재·공정 참조) · 정렬은 드래그 또는 정렬 컬럼 직접 수정 · 사용 중 코드 삭제 차단(RESTRICT)

SCR-CM-007시스템 설정

비밀번호 정책·계정 잠금·세션·알림·파일 전역 설정 · 카테고리별 접기/펼치기 패널 · [기본값 복원]=클라이언트 상수(서버 미호출) · 변경 사유 선택 입력(이력 90일 보관) (권한: ROLE_ADMIN · FR-CM-004)

진입 — 사이드바 > 시스템관리 > 시스템 설정

  1. 카테고리 아코디언 — 비밀번호 정책·계정 잠금·세션·알림·파일 5개 카테고리를 접고 펼치며 관리(본 예시는 비밀번호 정책만 펼침).
  2. 비밀번호 정책(펼침 예시) — 최소 길이·복잡도 조합·만료 주기·재사용 제한을 편집. SCR-CM-002 규칙 칩(⦿)의 값 원천.
  3. 기본값 복원 — 서버 호출 없이 클라이언트 상수(seedDefault)로 폼 값만 되돌린다.
  4. 접힘 카테고리(계정 잠금·세션·알림·파일) — 헤더에 현재값 요약이 함께 노출, 클릭 시 비밀번호 정책과 동일하게 펼쳐진다.
  5. 변경 사유 — 선택 입력(최대 200자). 저장 시 changeReason 으로 함께 전송, 이력은 90일 보관.
  6. 저장 버튼 — 실제 저장 트리거. PUT /api/cm/settings/{category} 로 변경값+사유 반영.
  7. [이력] 링크 — 설정 항목 우측 [이력]에서 변경자·시각·이전값·새값·변경 사유를 90일간 조회(R-CHANGE-REASON-UI). 본 예시는 비밀번호 정책 4개 항목에 표기, 다른 카테고리를 펼쳐도 동일 패턴 적용.
관련 API Swagger UI ↗
  • GET/api/cm/settings — 카테고리별 현재 설정값 목록 조회
  • GET/api/cm/settings/{category} — 펼친 카테고리(예: 비밀번호 정책)의 상세 값 조회
  • PUT/api/cm/settings/{category} — '저장' 변경값 + changeReason 반영
  • GET/api/cm/settings/history — 설정 항목 [이력] 링크 클릭 시 변경자·시각·이전값·새값·사유 조회
시스템관리  ›  시스템 설정
CMD+K 검색
1카테고리 아코디언 (▼ 펼침 / ▷ 접힘)
2비밀번호 정책
최소 길이10자 (10~20)7[이력]
복잡도 조합3가지 이상[이력]
만료 주기90일 (0 = 무만료)[이력]
재사용 제한5개 (0 = 제한 없음)[이력]3기본값 복원
5변경 사유 (선택 · 최대 200자)
변경 사유예: 보안 정책 강화 / 사용자 요청 / 시스템 보강

[기본값 복원] = FE 클라이언트 상수(seedDefault)로 폼값만 되돌림(서버 미호출) · 실제 저장은 [저장] → PUT /api/cm/settings/{category}

액션
취소6저장
SCR-CM-008비밀번호 재설정 · 폼 (토큰 유효)

?token= 진입 시 mount 직후 IF-CM-AUTH-008-1 로 토큰 사전 검증 → 유효(200)면 새 비밀번호 폼(FORM) 노출 · 10자 이상·3종 조합 · RSA 암호화 후 IF-CM-AUTH-008 제출 (권한: 비로그인 · FR-CM-001)

진입 — 이메일 재설정 링크(?token= 포함) / SCR-CM-001 [비밀번호를 잊으셨나요?] 링크(토큰 없음)

  1. 타이틀/안내 — "새로 사용할 비밀번호를 입력하세요" 안내문. 이 폼은 mount 직후 토큰 검증(IF-CM-AUTH-008-1)이 200(유효)일 때만 노출된다(FORM 상태).
  2. 새 비밀번호 — 필수, 10자 이상 3종 조합. SCR-CM-002 와 동일 규칙, RSA 암호화 전송. 이 두 수치는 붙박이가 아니라 IF-CM-AUTH-010 으로 받아 온다(운영자가 설정을 바꾸면 화면 검증도 따라 바뀐다. 10자·3종은 시드 기본값).
  3. 비밀번호 확인 — 필수, 새 비밀번호와 일치해야 제출 가능.
  4. 비밀번호 변경 버튼 — IF-CM-AUTH-008 로 제출, 성공 시 SCR-CM-001 로그인 화면으로 이동.
  5. 로그인으로 돌아가기 — 재설정을 취소하고 SCR-CM-001 로 이동.
  6. REQUEST 상태 — 토큰 없이 진입 시 이메일 입력 폼. 제출하면 IF-CM-AUTH-007 로 재설정 링크 발송(SENT).
  7. VALIDATING 상태 — ?token= 진입 직후 IF-CM-AUTH-008-1 검증 로딩. 결과에 따라 FORM 또는 에러 4종으로 분기.
  8. DONE 상태 — 새 비밀번호 제출 성공 후 완료 안내, SCR-CM-001 로그인 화면으로 이동.
관련 API Swagger UI ↗
  • POST/api/auth/password-reset-confirm — IF-CM-AUTH-008, 새 비밀번호 제출(RSA 암호화)
  • GET/api/auth/password-reset-validate — IF-CM-AUTH-008-1 재설정 토큰 사전 검증, mount 직후 토큰 검증(유효/만료/사용됨/조작됨 판별)이 화면 진입의 필수 전제. 토큰 미소비(조회 전용), AuthController.kt:193 구현됨(springdoc 자동 노출)
  • GET/api/auth/public-key — IF-CM-AUTH-004 RSA 공개키, 새 비밀번호 암호화 전송에 필요. AuthController.kt:72 구현됨(springdoc 자동 노출)
  • GET/api/auth/password-policy — IF-CM-AUTH-010 비밀번호 정책 조회(비인증). 최소 길이·최소 조합 수 2값을 돌려준다. 화면이 10자·3종을 붙박이로 두지 않고 이 값으로 검증한다. #726 BE 구현 완료(d527097), FE 배선은 #759
1비밀번호 재설정

새로 사용할 비밀번호를 입력하세요.

2새 비밀번호 *10자 이상, 영문·숫자·특수 3종
3비밀번호 확인 *다시 입력
4비밀번호 변경
5로그인으로 돌아가기

토큰 없이 진입(REQUEST)하면 이메일 입력 → IF-CM-AUTH-007 발송(SENT) · 성공(DONE) 시 SCR-CM-001 로그인 화면으로 이동

SCR-CM-008비밀번호 재설정 · 에러 (링크 만료 예시)

토큰이 유효하지 않으면 비밀번호 입력 폼 대신 사유 안내 + 복구 동선만 노출 · 에러 4종(INVALID / USED / EXPIRED / NETWORK) · 최종 검증은 confirm(IF-CM-AUTH-008)이 독립 수행 (권한: 비로그인)

진입 — 이메일 재설정 링크(?token= 포함) / SCR-CM-001 [비밀번호를 잊으셨나요?] 링크(토큰 없음) 진입 후 IF-CM-AUTH-008-1 토큰 검증 실패 시 자동 전환

  1. 에러 타이틀 — 에러 종류에 따라 바뀌는 헤딩(본 예시는 "링크 만료").
  2. 안내 알림 — 사유를 설명하는 경고 배너. "이행할 수 없는 폼"을 보여주지 않기 위한 방어적 UX.
  3. 재설정 링크 다시 요청 — 이메일 재입력 화면(REQUEST 상태)으로 이동해 IF-CM-AUTH-007 재발송.
  4. 로그인으로 돌아가기 — SCR-CM-001 로그인 화면으로 이동.
  5. 에러 4종 안내 — INVALID/USED/EXPIRED/NETWORK 문구 예시 모음. 복구 버튼 라벨은 INVALID/USED/EXPIRED 는 "재설정 링크 다시 요청", NETWORK 만 "다시 시도"로 다르다. 최종 판별은 confirm(IF-CM-AUTH-008)이 독립적으로 재수행(defense in depth).
관련 API Swagger UI ↗
  • POST/api/auth/password-reset-request — '재설정 링크 다시 요청' 이메일 재입력 후 재발송
  • GET/api/auth/password-reset-validate — IF-CM-AUTH-008-1 재설정 토큰 사전 검증, 이 화면의 에러 상태(INVALID/USED/EXPIRED/NETWORK)를 결정하는 응답 소스. AuthController.kt:193 구현됨(springdoc 자동 노출)
1링크 만료
2재설정 링크가 만료되었습니다. 유효 시간은 발송 후 1시간입니다.
3재설정 링크 다시 요청
4로그인으로 돌아가기
5에러 화면 4종 (IF-CM-AUTH-008-1 응답별)
INVALID 유효하지 않은 재설정 링크입니다. 재설정 링크 다시 요청
USED 이미 사용된 재설정 링크입니다. 재설정 링크 다시 요청
EXPIRED 재설정 링크가 만료되었습니다 (유효 1시간). ← 본 예시 재설정 링크 다시 요청
NETWORK 일시적인 오류가 발생했습니다. 잠시 후 다시 시도해 주세요. 다시 시도
SCR-CM-009계정 설정 · 내 정보

사이드바 좌하단 사용자 메뉴 진입 · [내 정보]·[비밀번호] 탭 허브 · 본인 프로필(이름·연락처·이메일) 셀프서비스 수정 · 로그인 아이디·권한·상태·부서는 읽기 전용(운영자만 변경) · [비밀번호] 탭 = SCR-CM-002 (권한: 로그인 사용자)

  1. 탭 [내 정보]·[비밀번호] — 같은 /settings 허브. 기본 탭 [내 정보](/settings/profile), [비밀번호] 탭은 SCR-CM-002(/settings/password) 를 그대로 품는다.
  2. 로그인 아이디 — 읽기 전용. 불변 식별자라 변경 불가.
  3. 이름 — 필수. 1~64자. 저장 성공 시 사이드바 좌하단 사용자명도 갱신.
  4. 연락처·이메일 — 선택. 이메일은 전역 UNIQUE — 다른 계정이 쓰는 값이면 409 EMAIL_DUPLICATE Toast 오류 (액션 실패 — §00 §4.5 R-ERR-ACTION-TOAST).
  5. 권한·상태·부서 — 읽기 전용 표시. 값 변경은 운영자(SCR-CM-003)만.
  6. 저장 버튼 — 제출. 세션 유지(강제 재로그인 없음). 편집 중 탭 전환·이탈 시 미저장 변경 가드.
관련 API Swagger UI ↗
  • GET/api/cm/me — IF-CM-AUTH-006 본인 정보 조회, 진입 시 폼 채움
  • PUT/api/cm/me — IF-CM-AUTH-009 본인 프로필(name·mobile·email) 수정 제출 (신설 · BE 미구현)
  • TAB/api/cm/me/password — [비밀번호] 탭 = SCR-CM-002 (IF-CM-AUTH-005)
내 계정  ›  계정 설정
CMD+K 검색
1내 정보 비밀번호
내 정보
2로그인 아이디jinho.k · 변경 불가
3이름 *김진호
4연락처010-0000-0000
4이메일jinho.k@example.com
5운영자 설정 (읽기 전용)
권한PM 편집자 (ROLE_PM_EDITOR)
상태JOINED
부서개발팀

권한·상태·부서는 운영자(SCR-CM-003)만 변경. 이 화면에서는 표시만 한다.

액션
취소6저장