如何在没有 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.

抛出一些有意义的错误