Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/#159 WorkspaceMemberid를 기록하는 WebRequestAuditorAware 구현 #161

Merged
merged 3 commits into from
Dec 26, 2024

Conversation

seungki1011
Copy link
Owner

@seungki1011 seungki1011 commented Dec 26, 2024

🚀 설명

  • 기존에는 세션에서 로그인 Member의 id를 기록
  • 워크스페이스와 관련된 행위에 대해서는 WorkspaceMemberid 기록이 필요
  • AuthorizationInterceptor에서 현재 WorkspaceMemberidHttpServletRequest에 저장
  • 이름 변경 SessionAuditorAware -> WebRequestAuditorAware
    • 요청의 API URI를 읽어서 /api/v1/workspaces로 시작하면 HttpServletRequest에서 속성에 저장한 현재 WorkspaceMemberid를 읽음
    • /api/v1/workspaces로 시작하는 요청이 아니면, 기존 처럼 세션에서 Memberid를 읽어서 반환
  • 워크스페이스 생성의 경우 그냥 Memberid 기록
  • Workspace의 경우 WorkspaceBaseEntity 상속
    • 생성자: createdByMember
    • 수정자: lastModifiedByWorkspaceMember
  • Workspace와 관련된 엔티티의 경우 WorkspaceContextBaseEntity 상속
    • 생성자: createdByWorkspaceMember
    • 수정자: lastModifiedByWorkspaceMember
  • 워크스페이스와 관련 없는 엔티티(Member)의 경우 BaseEntity상속
    • 생성자: createdByMember
    • 수정자: lastModifiedByMember

✅ 변경 사항

  • SessionAuditorAware -> WebRequestAuditorAware
  • AuthorizationInterceptor에서 현재 요청에 대한 WorkspaceMemberidHttpServletRequest에 저장

🚩 관련 이슈, PR


📖 참고

- 기존에는 세션에서 로그인 Member의 id를 기록
- 워크스페이스와 관련된 행위에 대해서는 WorkspaceMember의 id 기록이 필요
- AuthorizationInterceptor에서 현재 WorkspaceMember id를 HttpServletRequest에 저장
- 이름 변경 SessionAuditorAware -> WebRequestAuditorAware
- 요청의 API URI를 읽어서 /api/v1/workspaces로 시작하면 request에서 workspaceMemberId 읽음
- 워크스페이스 생성의 경우 그냥 Member의 id 기록
- Workspace의 경우 WorkspaceBaseEntity 상속
  - 생성자: createdByMember
  - 수정자: lastModifiedByWorkspaceMember
- Workspace와 관련된 엔티티의 경우 WorkspaceContextBaseEntity 상속
  - 생성자: createdByWorkspaceMember
  - 수정자: lastModifiedByWorkspaceMember
- 워크스페이스와 관련 없는 엔티티(Member)의 경우 BaseEntity 상속
  - 생성자: createdByMember
  - 수정자: lastModifiedByMember
@seungki1011 seungki1011 added the feature New feature or request label Dec 26, 2024
@seungki1011 seungki1011 self-assigned this Dec 26, 2024
Copy link

📊 Test Coverage Report

File Coverage [87.13%] 🍏
LoginMemberArgumentResolver.java 100% 🍏
AuthenticationInterceptor.java 100% 🍏
Position.java 100% 🍏
WorkspaceBaseEntity.java 100% 🍏
BaseEntity.java 100% 🍏
WorkspaceContextBaseEntity.java 100% 🍏
WorkspaceDetail.java 100% 🍏
JpaAuditingConfig.java 100% 🍏
AuthorizationInterceptor.java 98.82% 🍏
Workspace.java 94.7% 🍏
Issue.java 45.11%
Total Project Coverage 83.46% 🍏

@seungki1011 seungki1011 merged commit 32a23d7 into dev Dec 26, 2024
2 checks passed
@seungki1011 seungki1011 deleted the feat/#159-workspacemember-auditor-aware branch January 2, 2025 13:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant