반응형
Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self'"
이런 에러가 발생했다. "script-src 'self'관련해서 게시물 보안 정책에 위반했다는 내용으로 생각되었다.
확인해보니 nonce-{nonce} 이 요소가 필요하다고 한다.
Nonce?
Nonce 값을 효과적으로 사용하기 위해서는 서버에서 생성된 nonce를 클라이언트로 전달하고, 클라이언트의 HTML에서 이 nonce 값을 사용하여 인라인 스크립트를 안전하게 실행할 수 있도록 해야 합니다.
이번 경우에는 서버(Spring Security)에서 처리 하도록 한다.
// 수정코드
.headers(
headersConfigurer ->
headersConfigurer
.frameOptions(
HeadersConfigurer.FrameOptionsConfig::sameOrigin
)
.contentSecurityPolicy( policyConfig ->
policyConfig.policyDirectives(
"script-src 'self'; img-src 'self'; font-src 'self' data:; default-src 'self'; frame-src 'self'"
).reportOnly() // 추가
)
);
이렇게 하면 CSP관련 정책 처리는 report 작성만 하게 된다.
정상접속은 가능하나 콘솔에서 이슈들을 확인할 수 있다.
반응형
'Backend > Spring | SpringBoot' 카테고리의 다른 글
[Spring Security] 인증 후 처리 중 만난 에러 (0) | 2024.03.25 |
---|---|
[Spring Security] 인증 중 발생에러 (0) | 2024.03.21 |
[Spring Security] JPA를 이용한 DB 사용자 인증 (0) | 2024.03.20 |
[Spring Security] 인증 표현식 (0) | 2024.03.20 |
[Spring Security] Survlet 기반 Application 아키텍쳐(2) (0) | 2024.03.19 |