Java SpringREST身份验证

Java SpringREST身份验证,java,spring,rest,spring-boot,basic-authentication,Java,Spring,Rest,Spring Boot,Basic Authentication,我开发了一个RESTAPI(a),它通过调用另一个API(B)返回一些结果。 (B)API需要身份验证,因此在我的属性文件中,我定义了用户名和密码,并将其注入RestTemplate以使其正常工作 我想做的是:在我的API(a)中添加一个基本的身份验证系统,这样用户就可以输入他的用户名和密码,并在RestTemplate中使用这些凭据来调用API(B)。 谢谢您有两个选择。您可以使用: 示例代码: <bean id="basicAuthenticationFilter" class="

我开发了一个RESTAPI(a),它通过调用另一个API(B)返回一些结果。 (B)API需要身份验证,因此在我的属性文件中,我定义了用户名和密码,并将其注入RestTemplate以使其正常工作

我想做的是:在我的API(a)中添加一个基本的身份验证系统,这样用户就可以输入他的用户名和密码,并在RestTemplate中使用这些凭据来调用API(B)。
谢谢

您有两个选择。您可以使用:

示例代码:

<bean id="basicAuthenticationFilter"
  class="org.springframework.security.web.authentication.www.BasicAuthenticationFilter">
  <property name="authenticationManager" ref="authenticationManager"/>
  <property name="authenticationEntryPoint" ref="authenticationEntryPoint"/>
</bean>

<bean id="authenticationEntryPoint"
  class="org.springframework.security.web.authentication.www.BasicAuthenticationEntryPoint">
  <property name="realmName" value="Name Of Your Realm"/>
</bean>

或者您可以使用SpringSecurity,这是一个专门为向web应用程序添加安全层而设计的框架。这是一个完整的教程,解释了如何使用它向Rest API添加基本身份验证:


个人意见,我会使用Spring Security。

您有两种选择。您可以使用:

示例代码:

<bean id="basicAuthenticationFilter"
  class="org.springframework.security.web.authentication.www.BasicAuthenticationFilter">
  <property name="authenticationManager" ref="authenticationManager"/>
  <property name="authenticationEntryPoint" ref="authenticationEntryPoint"/>
</bean>

<bean id="authenticationEntryPoint"
  class="org.springframework.security.web.authentication.www.BasicAuthenticationEntryPoint">
  <property name="realmName" value="Name Of Your Realm"/>
</bean>

或者您可以使用SpringSecurity,这是一个专门为向web应用程序添加安全层而设计的框架。这是一个完整的教程,解释了如何使用它向Rest API添加基本身份验证:


个人观点,我会使用Spring安全性。

您可以将Spring安全性与自定义身份验证或oAuth 2身份验证一起使用

您可以将Spring安全性与自定义身份验证或oAuth 2身份验证一起使用