fix: improve validation in session listing and deletion APIs#1462
fix: improve validation in session listing and deletion APIs#1462
Conversation
Signed-off-by: sujitaw <sujit.sutar@ayanworks.com>
WalkthroughAdds TrimStringParamPipe to trim route parameters for Changes
Sequence Diagram(s)sequenceDiagram
autonumber
participant C as Client
participant R as API Gateway (AuthZ Controller)
participant P1 as TrimStringParamPipe
participant P2 as ParseUUIDPipe
participant S as AuthZ Service
C->>R: GET /:userId/sessions
activate R
R->>P1: Trim userId
P1-->>R: trimmed userId
R->>P2: Validate UUID (userId)
alt Invalid UUID
P2-->>R: throw BadRequest("Invalid user ID")
R-->>C: 400 Bad Request
else Valid
R->>S: listSessions(userId)
S-->>R: sessions
R-->>C: 200 OK
end
deactivate R
C->>R: DELETE /:sessionId/sessions
activate R
R->>P1: Trim sessionId
P1-->>R: trimmed sessionId
R->>P2: Validate UUID (sessionId)
alt Invalid UUID
P2-->>R: throw BadRequest("Invalid session ID")
R-->>C: 400 Bad Request
else Valid
R->>S: revokeSession(sessionId)
S-->>R: result
R-->>C: 200 OK
end
deactivate R
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (1)
apps/api-gateway/src/authz/authz.controller.ts (1)
425-433: Validation addition looks good; consider explicitly pinning UUID version.Trim + ParseUUIDPipe ordering is correct here. Optionally be explicit with UUID version for consistency:
- new ParseUUIDPipe({ + new ParseUUIDPipe({ + version: '4', exceptionFactory: (): Error => { throw new BadRequestException(`Invalid session ID`); } })
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
apps/api-gateway/src/authz/authz.controller.ts(3 hunks)
🧰 Additional context used
🧬 Code graph analysis (1)
apps/api-gateway/src/authz/authz.controller.ts (1)
libs/common/src/cast.helper.ts (1)
TrimStringParamPipe(167-172)
Signed-off-by: sujitaw <sujit.sutar@ayanworks.com>
|
* fix/validation issues for session list and delete api Signed-off-by: sujitaw <sujit.sutar@ayanworks.com> * fix/fixed code rabbit comments Signed-off-by: sujitaw <sujit.sutar@ayanworks.com> --------- Signed-off-by: sujitaw <sujit.sutar@ayanworks.com> Signed-off-by: Ankita Patidar <ankita.patidar@ayanworks.com>



What
Summary by CodeRabbit