Hockenba commented on code in PR #13651:
URL: https://github.com/apache/apisix/pull/13651#discussion_r3891867728
##########
apisix/plugins/openid-connect.lua:
##########
@@ -294,7 +294,19 @@ local schema = {
description = "keepalive timeout in milliseconds",
},
}
- }
+ },
+ revocation = {
+ type = "string",
+ enum = {"redis"},
+ description = "Redis-backed revocation for cookie
sessions.",
+ },
+ revocation_fail_mode = {
+ type = "string",
+ enum = {"open", "closed"},
Review Comment:
Not sure if the AI is correct (will verify in the morning), but this may be
intentional best-effort logout design—either by the project or something we may
want ourselves—so users aren't blocked when Redis is down. The client cookie
still clears, and from the UI's perspective, the logout happened successfully.
A bug-free UI won't randomly reuse deleted cookies, and this scenario is really
aimed at bad actors rather than normal operation.
The replay risk only exists if the session value was stolen and reused. Even
then, fail-open or fail-closed doesn't change the fact that we can't revoke it
without Redis up—so we have to eat that risk either way. If we fail closed, it
doesn't stop the replay attack; it just tells the user their logout failed and
leaves them retrying over and over again, which isn't great for UX.
If we prefer stricter failure handling regardless, we can add it now or
defer it. Either direction works depending on what makes sense for the project."
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]