Skip to content

[Feat][RBAC/Audit] 감사 로그 행위자 조직 정지 및 권한 제어 #304

Description

@yoonki1207

작업 설명

감사 로그에서 행위자(actor)를 클릭한 뒤, 감사 로그 조회 권한을 가진 Organization Admin이 해당 사용자를 현재 조직 범위에서 정지하거나 역할·리소스 권한을 선택적으로 회수할 수 있도록 합니다.

조직 정지 및 권한 회수의 역방향 동작인 정지 해제와 역할·리소스 권한 복구도 동일한 범위에서 제공합니다. 모든 관리 조치는 수행자, 대상, 조치 내용과 선택 입력한 사유를 포함해 감사 로그로 기록합니다.

상세 작업

  • 감사 로그의 행위자를 클릭하면 조직 내 사용자 상태와 역할·리소스 권한을 확인할 수 있는 상세 관리 UI를 표시합니다.
  • 감사 로그를 조회할 수 있는 Admin에게만 사용자 제어 기능을 노출하고, Gateway/API에서도 동일한 권한을 검증합니다.
  • 현재 Organization 범위에서 사용자를 정지하고 정지를 해제할 수 있도록 합니다.
  • 역할 또는 리소스 권한을 항목별로 선택해 회수하고 복구할 수 있도록 합니다.
  • 정지, 정지 해제, 권한 회수, 권한 복구 실행 전에 확인 팝업을 표시합니다.
  • 확인 팝업에서 조치 사유를 선택적으로 입력할 수 있도록 합니다.
  • 관리자가 자기 자신을 정지하거나 강등하지 못하도록 차단합니다.
  • 마지막 Organization Admin을 정지하거나 강등하지 못하도록 차단합니다.
  • 대상 사용자와 변경 대상 역할·리소스가 현재 Organization에 속하는지 검증합니다.
  • 모든 관리 조치를 감사 이벤트로 기록합니다.
    • 수행자
    • 대상 사용자
    • 조치 종류
    • 대상 Organization
    • 변경된 역할 또는 리소스 권한
    • 선택 입력한 사유
    • 수행 시각
    • 가능한 경우 변경 전·후 상태
  • 정상 처리, 권한 없음, 자기 자신 제어, 마지막 Admin 보호, 조직 범위 위반, 정지/권한 복구에 대한 테스트를 추가합니다.
  • RBAC 및 audit 관련 feature 문서와 API/UI/test 명세를 갱신합니다.

참고 사항

  • 정지는 전역 계정이 아니라 현재 Organization의 멤버십에만 적용합니다.
  • 기존 로그인 세션의 즉시 종료와 이미 실행 중인 workflow의 즉시 중단은 필수 범위가 아닙니다.
  • 권한 회수는 전체 권한 일괄 삭제가 아니라 역할·리소스별 선택 회수입니다.
  • 조치 사유 입력은 필수가 아닙니다.
  • UI의 버튼 노출만으로 권한을 제어하지 않고 Gateway/API를 최종 보안 경계로 사용합니다.

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

Priority

None yet

Projects

Status
Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions