Jhipster网关要求完全身份验证才能访问此资源

时间:2018-09-12 06:58:57

标签: java api web-services authentication jhipster

您好,我正在ubuntu os上从事Jhipster的研究。 我的项目设置成功完成。 但是当尝试测试api时,它给了我验证错误。

这是测试API时发生的错误。如果有人帮助我,我将很高兴。

错误:

select * from table1 t1
where revisionNumber in ( select max(revisionNumber) 
   from
   table1 t2 where t1.title=t2.title and t1.documentForm=t2.documentForm
   group by t2.title,t2.documentForm
   )

Web浏览器

rExceptionResolver : Resolved exception caused by Handler execution: org.springframework.security.authentication.InsufficientAuthenticationException: Full authentication is required to access this resource

3 个答案:

答案 0 :(得分:1)

在我的情况下(在开发人员资料中),我更新了 JWT令牌,在所有应用程序(微服务,网关和注册表)中均更改为base64,此外,还进行了评论旧属性“秘密” 并在所有属性中使用相同的密钥。然后从网关正确测试API,没有授权问题。

jh版本5.7.1

答案 1 :(得分:0)

解决方案:

我在这里找到解决方法。

Jhipster用户创建的默认配置存在问题。
当我们使用Jhipster创建应用和实体时,它还将创建用户身份验证作为其功能。
但是在我的情况下,用户不是在创建期间选择的数据库中创建的。

负责表:-

  1. jhi_user
  2. jhi_user_authority
  3. jhi_authority

因此,我们只需要在这些表中提供Jhipster的默认用户的详细信息即可。

用户名:admin
密码:管理员

确保密码采用加密形式。

答案 2 :(得分:0)

好像您执行带有身份验证的JHipster注册表,而无需执行应用程序。 如果您没有更改JHipster jwt秘密密钥,则必须使用以下参数执行应用程序(微服务):

--spring.security.user.password=admin --jhipster.security.authentication.jwt.secret=my-secret-key-which-should-be-changed-in-production-and-be-base64-encoded --spring.cloud.config.server.composite.0.type=native --spring.cloud.config.server.composite.0.search-locations=file:./central-config
  

您秘密的JWT密钥,您可以在application.yml文件的central-config包中找到

有关更多详细信息,请阅读JHipster文档: https://www.jhipster.tech/security/#-json-web-tokens-jwt https://www.jhipster.tech/jhipster-registry/