如何在没有 spring 安全性的情况下使用 api 密钥保护休息 api
how to secure rest api with api keys without spring security
我休息一下 api MyRestApi.war
这是一个 spring 引导和 spring mvc 项目。
还有另一个 Web 项目 A.war
,这是一个普通的 spring 项目。
它的前端如javascript
和后端如java code
需要
打电话给 MyRestApi
。用户需要登录 A.war
才能使用。
我不需要对MyRestApi
做权限控制,只有登录A.war
的用户才能通过[=14=的前后端访问MyRestApi
]
有一些解决方案,例如API key
, jwt
, OAuth
.
我想尝试这三种方法,然后选择一种。
但是当我搜索类似 api key authentication
的内容时,他们都使用 spring security
来搜索。
那么如何在没有 spring 安全性的情况下使用 api 密钥保护 MyRestApi
。
如果您不想使用 spring 安全性,您可以编写自己的过滤器。此过滤器将拦截所有 URL。
在此过滤器中,您可以检查 headers 中的 API 键并进行验证。
如果它是有效的,让链继续,否则向 user/application.
抛出一些有意义的错误
我休息一下 api MyRestApi.war
这是一个 spring 引导和 spring mvc 项目。
还有另一个 Web 项目 A.war
,这是一个普通的 spring 项目。
它的前端如javascript
和后端如java code
需要
打电话给 MyRestApi
。用户需要登录 A.war
才能使用。
我不需要对MyRestApi
做权限控制,只有登录A.war
的用户才能通过[=14=的前后端访问MyRestApi
]
有一些解决方案,例如API key
, jwt
, OAuth
.
我想尝试这三种方法,然后选择一种。
但是当我搜索类似 api key authentication
的内容时,他们都使用 spring security
来搜索。
那么如何在没有 spring 安全性的情况下使用 api 密钥保护 MyRestApi
。
如果您不想使用 spring 安全性,您可以编写自己的过滤器。此过滤器将拦截所有 URL。 在此过滤器中,您可以检查 headers 中的 API 键并进行验证。 如果它是有效的,让链继续,否则向 user/application.
抛出一些有意义的错误