Federsicherheit kann dabei helfen. Sie können einige URLs definieren, auf die nur bestimmte Benutzer mit bestimmten Rollen zugreifen können.
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
protected void configures(HttpSecurity http) throws Exception {
http.exceptionHandling()
.accessDeniedPage("/error").and()
.authorizeRequests()
.antMatchers("/api/**").hasAnyRole("USER_ROLE");
}
}
Damit nur diejenigen mit der Rolle "USER_ROLE" auf jede URL zugreifen können, beginnt mit "/ api". Um diese Funktionalität zu haben, müssen Sie ein Login-System implementieren, das den Benutzern nach erfolgreicher Anmeldung das "USER_ROLE" zuweist.
Am AngularJs Teil ist es ziemlich einfach. Sie führen lediglich eine HTTP-Anfrage an die REST-API, da der Browser Cookies und JSESSIONID enthält, wird er zusammen mit der Anfrage in der Kopfzeile gesendet. Spring hebt es auf und überprüft, ob der Benutzer mit dem JSESSIONID berechtigt ist, auf die URL zuzugreifen.
Ich möchte nur helfen: [vielleicht dieser Link gibt Ihnen relevante Informationen] (https://stackoverflow.com/questions/24617452/only-allowing-certain-websites-access-php-api) –