问题标签 [spring-security-rest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
135 浏览

grails - 用于grails和多个数据源的spring security rest插件

我们正在使用跨区域分布的多个数据源。每个数据源旨在处理与该区域的所有用户相关的所有数据,包括与安全相关的数据,例如角色、令牌等。我不能在一个数据源中拥有所有与安全相关的信息。

Grails 的 Spring security rest 插件是否支持此设置?据我了解,它总是查看所有与身份验证相关的表的默认数据源,并将所有令牌单独存储在默认数据源中。

有人可以证实这一点吗?如果插件支持多个数据源,如何使其工作?

我们的环境:Grails 2.4.4 Spring security rest plugin 1.5.3 Spring security core 2.0-RC4 Postgresql 9.5

0 投票
1 回答
583 浏览

grails - Grails,Spring Security Rest Plugin,无法在空对象上调用方法 loadUserByToken()

我正在尝试在 grails 框架(2.5.0)中使用 Spring Security Plugin(2.0.0)和 Spring Authentication Rest Plugin(1.5.3)实现基于令牌的身份验证。我将标头字段“x-auth-token”设置为令牌并发布到目标控制器 URL。但是,IDE(Intellij IDEA)弹出此错误消息

我检查了这个 loadUserByToken() 方法,它是在 tokenStorageService 上调用的。我不知道为什么这个 tokenStorageService 是空对象。Spring Security 和 Spring Security Plugin 配置如下:

配置文件

资源.groovy

我检查了数据库,令牌存储在 authentication_token 表中。我是 grails 的新手,一直在搜索几个小时,一点头绪都没有。谁能帮我?非常感激。

如果您还需要什么,请告诉我。

0 投票
1 回答
564 浏览

grails - 使用 @Secured 闭包时如何获取控制器方法参数?

我已成功设置我的 Grails 应用程序来验证用户身份。

我在 UrlMappings.groovy 中使用 URL 参数映射控制器方法参数:

如何在 @Secured 闭包中获取 $source 和 $ownerId 的值?

我的控制器方法如下所示:

我如何获得这些值?我在这里做错了什么?

我认为这篇文章会提供一个解决方案,但那里给出的答案对我不起作用:

是否可以破解 spring-security-core 插件 @Secured 注释以引用给控制器的请求参数?

我正在使用以下 grails 和插件版本:

0 投票
0 回答
236 浏览

grails - grails 3.0 angularjs spring security rest插件被禁止403

我正在尝试使用带有 angularjs 配置文件的 grails 3.2.0.M2来遵循http://alvarosanchez.github.io/grails-angularjs-springsecurity-workshop/上的教程。

build.gradle 有以下内容

我的 application.groovy 有以下内容

我故意不使用'/api/**'前缀,因为我想我将不得不更改多个javascript。

我能够成功登录并获得令牌,但之后许多操作都返回 403 状态。例如

另一方面,一些请求根本不需要令牌!例如以下,无论是否缺少令牌,它都可以正常工作

最后,我的休息客户要求在此处输入图像描述 我对使我的网站无状态最不感兴趣;有没有办法让我所有的 grails 3 控制器都是静态的并且只使用 spring-security-core?

0 投票
1 回答
3790 浏览

spring - 使用 Grail 插件 spring-security-rest 获取 403 错误 Bearer error="insufficient_scope" #3

我正在尝试使用 Spring 安全性制作一个基本的 REST API 示例工作。我正在使用 Grails 插件 spring-security-rest:2.0.0.M2

我试图遵循这个优秀的教程,但我遇到了范围不足的错误。

我正在定义一个角色 ADMIN_ROLE。成功登录后,我得到一个 access_token

@Secured(['ROLE_ADMIN'])在我的 ProjectController 类中添加了标签:

我的 UrlMappings 指向 ProjectController:package dk.mathmagicians.demo

我已经使用过滤器配置了我的 application.groovy 文件,如下所示

当我尝试调用我的 api 时($TOKEN 是一个环境变量,令牌存储在其中用于测试目的)

我收到 403 错误,关于范围不足:

我已启用调试日志记录,这是 grails 应用程序的输出

关于我做错了什么的任何想法?有关如何解决此错误的任何提示?

最好的阿加塔


使用 ProjectController 和 UrlMapping 更新问题

0 投票
1 回答
469 浏览

grails - 如何处理 grails spring-security-rest 插件中的自定义身份验证异常?

我正在使用带有spring-security-rest插件的 Grails。

如何确保记录所有用户身份验证错误?

我发现插件中抛出的安全异常没有使用我当前的配置记录。我希望在 ERROR 级别记录任何用户身份验证错误。

我尝试为'grails.plugin.springsecurity.rest'启用调试日志记录,但这会记录太多信息。

我开始做的是为我想要捕获的错误定义一个 spring ApplicationListener 。我发现并非插件中的所有错误都会生成事件。例如,TokenNotFoundException 在 DefaultAuthenticationEventPublisher 中没有映射。

如何将映射添加到DefaultAuthenticationEventPublisher?这是解决这个问题的最佳方法,还是有另一种更简单的方法?

0 投票
1 回答
147 浏览

spring-security - Spring Security 作为微服务

我的应用程序设计如下所示:

浏览器---调用----> Web 微服务 ----调用---> REST 微服务

REST 客户端 --calls--> REST 微服务。

我想使用 Spring Security 作为应用程序的入口点来验证用户/会话/客户端并在下划线微服务中重用有关用户的信息。我正在考虑为它提供安全服务。

Browser--> Security Service ----> Web MicroService ----> REST microService

REST 客户端 ---->安全服务----> REST 服务。

问题

  1. 安全服务如何将有关用户的所需信息传递给其他服务?

  2. 如果需要在 Web Service 和 REST 服务中集成 Spring 安全性,那么当 REST 微服务由 Web 服务或直接由 REST 客户端调用时,令牌验证如何工作?

  3. 在为问题 2 生成 JWT 令牌时,客户端 ID 和密钥应该是什么?

注意:所有服务都可以访问相同的数据库

0 投票
0 回答
2566 浏览

spring-security - 使用自定义 UserDetailService 的带有 JDBC 的 Spring Boot OAuth2

我正在尝试使用具有 Spring 安全性的 OAuth2.0 来保护我的 Spring Boot Rest API,并希望将 OAuth 令牌(访问令牌和刷新令牌)存储在 JDBC 数据库中。对于用户名和密码验证,我创建了 CustomUserDetailService。

我收到以下错误-

我的代码是 -

Oauth2Config

网络安全配置

自定义用户详细信息服务

应用程序属性

请建议我如何解决这个错误?

0 投票
1 回答
280 浏览

grails - Grails Spring Security Rest:restTokenValidationFilter 不起作用

我正在使用带有 Grails 3 的Spring Security Rest 插件,但我遇到了过滤器链的问题。

我想要完成的是启动了安全上下文,但仍然应该可以进行匿名访问。

我的过滤器链是

但是在应用程序启动时出现错误

我查了一下,插件包含 RestTokenValidationFilter 类,所以我不明白,为什么找不到 bean。

为了深入了解这一点,我尝试将类添加到resource.groovy文件中,但它仍然不起作用。

是我的过滤器链中的问题还是我错过了其他东西?

0 投票
0 回答
169 浏览

spring-security - 将 Spring Rest Services 与单独部署的 Spring Security JWT 集成

我有一个单独部署的 Spring JWT 项目和 Spring Rest Services。我必须通过调用 Spring JWT 服务来进行身份验证和授权。虽然我对此很陌生,但我有很好的理解。任何人都知道如何实现这一目标。

注意:Spring 4.x、Spring Security 4.x 和 Hibernate 5.x 以及基于 Java 的配置