CSP는 웹 애플리케이션의 보안을 강화하기 위한 정책으로
인라인 JavaScript 코드나 동적으로 생성된 스크립트를 사용할 때 정책을 위반할 수 있다
HTTP 헤더를 이용해 웹에 적용한다
Spring Framework에서 CSP 정책을 적용하려면 Spring Security를 사용
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.headers()
.contentSecurityPolicy("default-src 'self'; script-src 'self' 'unsafe-inline';");
}
}
PHP 스크립트 내에서 header() 함수를 사용
header("Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline';");
.htaccess 파일에 CSP 헤더 추가
<IfModule mod_headers.c>
Header always set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline';"
</IfModule>
Nginx 서버 블록에 CSP 헤더 추가
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline';";