amazon-web-services - 如何从 ALB OIDC session 注销?

标签 amazon-web-services go openid-connect aws-application-load-balancer

我正在使用 OIDC 进行身份验证并使用 ALB 登录。
成功登录后,我可以在浏览器中看到 AWSELBAuthSessionCookie-0。
对于注销,我将上面的 cookie 值设置为 -1 并将用户重定向到应用程序主页。
我期待它应该再次将我重定向到 OIDC 登录页面,但我没有再次获得登录页面 ALB cookie 被自动创建,我可以在不重新登录的情况下看到主页。

这是 golang 中的代码——

  deletingCookie := http.Cookie{Name: "AWSELBAuthSessionCookie-0", Path: "/", MaxAge: -1}
  http.SetCookie(w, &deletingCookie)
  http.Redirect(w, req, "https://www.test.com/", http.StatusFound)

最佳答案

cookie 选项 maxage如果指定的是一个正整数,表示以秒为单位的最大年龄,以及 expires选项是日期时间对象或 UNIX 时间戳。
通常 cookie 将在根路径 / 中可用。本身是给定的,并且可以在尝试删除(过期)时设置为空值。
因此,结合以上所有内容,请尝试:

deletingCookie := http.Cookie{Name: "AWSELBAuthSessionCookie-0", Value:"", Path: "/", MaxAge: 0}
http.SetCookie(w, &deletingCookie)

关于amazon-web-services - 如何从 ALB OIDC session 注销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62345859/

相关文章:

go - 使用 Docker 获取包超时 - "golang.org/x/net/context/ctxhttp"

amazon-web-services - 实例附加了哪个角色

amazon-web-services - cloudformation 创建 cloudfront 后创建失效的最佳方法是什么?

amazon-web-services - 如何在 CloudFormation 模板中将数据从 AWS S3 复制到 EC2?

Azure Active Directory 应用程序注册与企业应用程序

c# - OpenID 的虚张声势问题

azure - 使用服务主体授权访问 Azure

amazon-web-services - 无法到达 erlang 端口映射器 - Couchbase 错误

go - 为什么在将结构值设置为映射中的值时会出现 "cannot assign"错误?

Golang中的XML编码器不会关闭所有流中的标签