Spring + Angular设置和安全性

时间:2015-02-24 20:07:05

标签: angularjs spring rest maven spring-security

我想知道最好的方法是设置一个包含Spring RESTful API的项目,以及提供静态Angularjs页面以使用RESTful Web服务的能力。以下实现有效但我现在希望在应用程序中添加安全性,我不确定如何将Spring Security应用于REST Api和静态页面。

  • 以下设置是否符合我的最终目标?
  • 如何保护REST Api&&静态页面?

我有以下项目结构

Project Structure

Servlet配置

import javax.servlet.ServletContext;  
import javax.servlet.ServletException;  
import javax.servlet.ServletRegistration.Dynamic;  

import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.WebApplicationInitializer;  
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;  
import org.springframework.web.servlet.DispatcherServlet; 



@ComponentScan
public class WebAppInitializer implements WebApplicationInitializer {
    public void onStartup(ServletContext servletContext) throws ServletException {  

        servletContext.addFilter("corsFilter", new CORSFilter());

        AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();  
        ctx.register(WebMvcConfig.class);  
        ctx.setServletContext(servletContext);                 

        Dynamic dynamic = servletContext.addServlet("dispatcher", new DispatcherServlet(ctx));  
        dynamic.addMapping("/api/*");  
        dynamic.setLoadOnStartup(1);  
   }  
}