我想做一个网站,需要首先实现注册和登录服务。我使用 Boot ,并采用grpc来实现不同服务之间的通信。以下是我的要求:1.一些API可以在用户登录之后才可访问1.我不想用session,jwt是我的首选1.我需要支持第三方登录,像github,谷歌登录是否适合采用Spring安全性oauth2和jwt?在成熟的商业应用中,一般采用什么技术栈来实现权限认证?
yptwkmov1#
根据你的问题,你的调查是正确的。使用Spring Security来满足这些需求是个好主意。在我工作过的商业应用程序中,我们使用了第三方服务,如Firebase Authentication或Auth0**+* JWT,通过请求头 Authorization:(Bearer authentication)**+**Spring Security传递。在不太大的配置和调整(以及一些方法覆盖)之后,您将能够使用方便的注解,如@PreAuthorize()和参数isAuthenticated(),permitAll(),hasRole(String role)等等。
@PreAuthorize()
isAuthenticated()
permitAll()
hasRole(String role)
@PreAuthorize("isAuthenticated()") public List<GiftCardResponse> getUserGiftCards() { ... }
字符串
1条答案
按热度按时间yptwkmov1#
根据你的问题,你的调查是正确的。使用Spring Security来满足这些需求是个好主意。在我工作过的商业应用程序中,我们使用了第三方服务,如Firebase Authentication或Auth0**+* JWT,通过请求头 Authorization:(Bearer authentication)**+**Spring Security传递。在不太大的配置和调整(以及一些方法覆盖)之后,您将能够使用方便的注解,如
@PreAuthorize()
和参数isAuthenticated()
,permitAll()
,hasRole(String role)
等等。字符串