当前位置: 首页 > 知识库问答 >
问题:

如何验证SM_USER头部在Spring Security预认证siteminder

燕智
2023-03-14

我正在尝试使用siteminder的预身份验证安全性创建一个安全的spring rest api。

我已经尝试了一个解决方案,在那里我得到了SM\U用户,当我在postman中测试它时,通过添加带有随机值的新标题SM\U用户,它似乎工作得很好。

如果您不提供标头,我得到一个错误org.springframework.security.web.authentication.preauth.PreAuthrouatedCrepedia alsNotFoundException:SM_USER标头中找不到的请求是有效的。

但是我如何确定这是安全的?如果有人知道我的rest api的URL,可以毫无问题地调用它。我应该在Spring检查其他内容还是只有siteminder提供用户身份验证?

共有1个答案

鲜于凯歌
2023-03-14

前端SiteMinder Web代理是会话有效的保证-您必须通过服务器/网络配置确保您的应用程序在没有首先通过SiteMinder Web代理的情况下无法直接访问。

此外,SiteMinder断言多个标头。SM_USER不应单独使用,因为在某些情况下,当用户实际上没有有效的会话时,Web代理可以断言它。相反,您应该首先查找SM_SERVERSESSIONID的存在(非空白),它仅在会话有效时才存在。

最后,我通常尽量避免使用SM\U用户,因为SM\U用户实际上根本不是用户属性,而是“用于身份验证的登录标识符”。如果SiteMinder通过联合身份验证(如SAML)或x509身份验证对用户进行身份验证,则SM\U用户将与使用登录表单时有很大不同。相反,在SiteMinder中,最好设置一个作为用户属性的“通用id”,并在标题中显示为SM\u UNIVERSALID。您的SiteMinder管理员将知道如何做到这一点(并且可能已经知道-看看您是否已经有可用的SM\U UNIVERSALID头)。

另一个注意事项是,在某些SiteMinder配置中,下划线不会出现在标题名称中(在SiteMinder中,使用下划线被称为“遗留”标题模式),因此您可能希望让您的应用程序可以根据标题名称进行配置,例如SMSERVERSESSIONID、SMUSER、SMUNIVERSALID等。

如果要以编程方式重新验证会话,可以使用SiteMinder代理API或REST API,或者查看我公司的产品“SSO/REST”,它为SiteMinder和其他SSO提供了一整套统一的REST接口(http://www.idfconnect.com).

嗯!

理查德

 类似资料:
  • 我的应用程序从Oracle Access Manager SSO获取一个带有用户名的AUTH_用户请求标头。Spring Security“附加主题”2.2。1有一个“PreAuth”的示例,这似乎是我需要的,但不是一个完整的工作示例。 下面的片段来自文档/示例,而不是基于注释的配置。 Siteminder示例配置-使用带有RequestHeaderAuthenticationFilter和Pre

  • 我正在Java一个使用来自Kafka集群的数据的管道,它可在 https://github.com/confluentinc/confluent-google-examples/blob/master/ccloud-dataflow-demo/entry-df-pipeline/src/main/java/com/ecuevas/DataflowPipeline.java 根据存储库,定义了和:

  • 最后,我实现了UserDetailsService接口

  • 问题内容: 这是我的情况: 一个Web应用程序对许多应用程序执行某种SSO 登录的用户,而不是单击链接,该应用就会向正确的应用发布包含用户信息(名称,pwd [无用],角色)的帖子 我正在其中一个应用程序上实现SpringSecurity以从其功能中受益(会话中的权限,其类提供的方法等) 因此,我需要开发一个 自定义过滤器 -我猜想-能够从请求中检索用户信息,通过自定义 DetailsUserSe

  • 可用于强制重新发送SMS验证码。然而,在对医生做了一些研究之后,我仍然不知道该怎么做。

  • 开发者需要自己维护预签名下发服务器,由预签名下发服务器调用FDS SDK产生预签名链接 由于签名信息在url中,所有http请求请使用https协议 与请求签名认证的区别 对客户端要求低:开发者服务端计算请求签名 更安全:无须把密钥发布到设备上 签名信息保存在url中,而不是在http请求头部 用预签名URL完成分片上传 参考Presigned url分片上传示例 调试相关 参考 预签名链接使用相