“Spring Security”和“Java 认证和授权服务(jaas)”

Posted

技术标签:

【中文标题】“Spring Security”和“Java 认证和授权服务(jaas)”【英文标题】:"Spring Security" and "Java Authentication and Authorization Service(jaas)" 【发布时间】:2011-11-10 02:37:13 【问题描述】:

我对 Spring 和 Spring 安全性非常陌生,我们有一个扩展的 Java 应用程序(不是 Web 应用程序)并尝试使用 Spring 作为框架。 我已经阅读了一些关于 jaas 的内容,并为我的应用程序制作了一个简单的 jaas 安全框架(不是一个完美的框架)。

现在,由于我们要合并到 Spring 框架,我有一些问题:

    “Spring Security”是基于“jaas”还是可以使用 jaas 作为可选提供程序,可以被完全不同的东西替换?

    “Spring Security”是否能够在单个应用程序中管理多个并行用户? (特别是授权)

    我发现您应该做很多工作才能将基本的 jaas api 转换为有用的 api(使用 DB、用户/组管理类...),那么“Spring Security”呢? (似乎在 jaas-Provider 我们有很多有用的实现)

    你知道任何使用“Spring Security”的示例代码吗?

非常感谢您的宝贵时间

【问题讨论】:

【参考方案1】:
    Spring Security 不基于 JAAS。事实上,它可以使用 JAAS 作为 可选提供商。 是的,确实如此。我不确定完全理解你的问题,好像 不能,那是没有意义的。 构建一个 JAAS 提供者确实需要做很多工作。开发弹簧 安全身份验证提供程序要简单得多。 你会找到一个很好的样本here

【讨论】:

【参考方案2】:

Spring Security integrates 与 JAAS 搭配得非常好。

并行用户在身份验证和授权方面都是单独管理的,并且包括从taglibs 到pointcuts 和注释的各种构造来配置授权。

【讨论】:

“Spring Security 与 JAAS 集成得非常好” ...你能提供一些代码 sn-ps 或指向任何来源吗?

以上是关于“Spring Security”和“Java 认证和授权服务(jaas)”的主要内容,如果未能解决你的问题,请参考以下文章

Spring 框架 4.0 和 Spring security 3.2.4 上的 Spring Security SAML 扩展

Spring Security入门(3-5)Spring Security 的鉴权 - 决策管理器和投票器

Spring 中的 spring-security-oauth2 与 spring-security-oauth2-core

如何使用 Spring-Security 3 和 Hibernate 4 将 spring security xml 配置 hibernate 转换为 java config

Spring Session 和 Spring Security

如何使用 Spring Security 模拟身份验证和授权