繁体   English   中英

使用Spring Security和OAuth2保护Spring Rest-公开用户名/密码

[英]Securing Spring Rest with Spring Security and OAuth2 - Username/Password are exposed

我正在从事Spring Rest项目,并使用OAuth 2.0保护这些API免受未经授权的访问。

前端:Angular.js后端:Spring Rest + Spring Security + Oauth2

一切工作正常:

1)我使用以下uri从后端使用令牌获得令牌:

.... /的OAuth /令牌?grant_type =密码&CLIENT_ID = angularapp&client_secret = angularapp&用户名= USER5 @ gmail.com&密码= USER5 @ 123

2)我从后端获得了令牌,并使用该令牌访问API。

现在的问题是,一旦我使用/ oauth / token打后端?grant_type = password&client_id = angularapp&client_secret = angularapp&username = user5 @ gmail.com&password = user5 @ 123

这个uri,这就是angular js文件页面中的全部内容,任何人都可以使用查看页面源代码来访问它们。

请提出一种在js级别隐藏这些凭据的方法,如有必要,可以在后端隐藏一些加密或任何其他实现。

我执行错误吗? 请提出正确的道路

谢谢

答案在于JWT令牌。 不要使用URL编码。 在这种情况下,您的Auth0服务器和API服务器都共享一个秘密加密密钥。 您可以使用许多JWT框架来避免样板编码。 例如: https//github.com/auth0/java-jwt

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM