CAS认证后恢复原始POST请求?
Posted
技术标签:
【中文标题】CAS认证后恢复原始POST请求?【英文标题】:Restore original POST request after CAS authentication? 【发布时间】:2011-11-30 12:05:49 【问题描述】:我的 json-rpc 服务仅接受 http POST-req,并希望它使用 CAS SSO 身份验证。 当前的请求流程大致是这样的:
POST host/service/ -> 302 redirect
GET host/cas/login?service=https%3A%2F%2Fhost%2Fservice%2F -> 302 redirect
GET host/service/?ticket=ST-16-0rtrEQunbcbNdP16Eu07-cas -> 302 redirect
GET host/service/ -> 405 GET Method not supported
我想我们需要将最后一个 GET 转换为 POST 并保存原始帖子正文参数。 有什么提示吗?在 spring-sec 链中添加裸 RequestCacheAwareFilter 没有帮助。
【问题讨论】:
【参考方案1】:看起来解决问题的唯一方法是避免在帖子中重定向。因此,您需要在同一个 webapp 中对一些已知的 GET 接受服务 url 进行正常的 GET(当您在 POST 上检测到 405 代码时)以重定向到/来自 CAS,然后您才能安全地使用 POST。
【讨论】:
以上是关于CAS认证后恢复原始POST请求?的主要内容,如果未能解决你的问题,请参考以下文章
spring boot应用集成cas单点登录,post请求拿不到参数
身份验证过滤器重定向回 Laravel 中的原始 POST 请求
如何使用 C# 在 POST 请求中发送 json 数据 [重复]