개발자 / 보안 정책

CSP 생성기: 콘텐츠 보안 정책 작성 및 분석

소스 목록, nonce 및 해시 플레이스홀더, 보고 지시문과 일반적인 프리셋으로 Content-Security-Policy 헤더를 생성합니다. 경고를 확인하고 HTTP, meta, nginx, Apache 또는 정적 _headers 출력을 복사하십시오.

CSP 생성기: 콘텐츠 보안 정책 작성 및 분석: 정책을 로컬에서 작성하고 unsafe-inline, unsafe-eval, 광범위한 소스, 중복 지시문 및 배포 플레이스홀더를 표시합니다. 파서는 알 수 없는 지시문을 보존하며, 반복된 지시문은 처음 나타난 항목을 사용합니다. 한 번에 하나의 정책만 분석하며 보호된 페이지를 불러오지 않습니다. 서버에 파일을 전혀 업로드하지 않고 브라우저에서 100% 로컬로 실행됩니다.

카테고리
개발자 도구
실행 횟수
브라우저에서
비용
무료 · 가입 불필요
사용 가능 여부
사용 가능
콘텐츠 보안 정책 도구로컬 처리

브라우저에서 전부 실행됩니다

프리셋은 현재 정책을 대체합니다. 먼저 보고 전용 헤더로 테스트하십시오. Nonce 자리 표시자에는 서버 통합이 필요하며, 정적 헤더는 새 nonce를 생성할 수 없습니다.

스크립트 소스 토큰

script-src · strict-dynamic에는 유효한 nonce 또는 hash가 필요하며, 지원되는 브라우저에서는 호스트 허용 목록을 재정의합니다.

script-src · 배포 전에 nonce 및 hash 자리 표시자를 교체하십시오. 각 응답마다 예측할 수 없는 새 nonce를 생성하십시오.

Meta 정책으로는 frame-ancestors 또는 sandbox를 적용하거나 report-uri를 사용하거나 보고 전용 정책을 전달할 수 없습니다. 보고 지시어는 여기에서 제외됩니다.

이는 보안 감사가 아닌 구문 및 위험 검토입니다. 알 수 없거나 잘못된 소스 표현식은 브라우저에서 테스트해야 합니다. 추가 정책은 함께 적용되며 이전 정책을 완화할 수 없습니다. 생성된 _headers 파일은 정적 응답용이고, 동적 응답에는 별도의 헤더 설정이 필요합니다.

정책 구문 및 전달

W3C Content Security Policy Level 3: https://www.w3.org/TR/CSP3/ 지시문은 세미콜론으로, 값은 공백으로 구분합니다. 메타 전달은 HTTP 응답 헤더보다 기능이 적습니다.

논스, 해시 및 배포

MDN Content Security Policy 가이드: https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/CSP strict-dynamic은 논스 또는 해시로 승인된 스크립트의 신뢰를 해당 스크립트가 불러오는 스크립트로 전달하며, 이를 지원하는 브라우저에서는 호스트 허용 목록보다 우선합니다. 신뢰된 스크립트의 동작을 감사하고 최종 정책을 테스트하십시오.

사용 방법

  1. 프리셋을 선택하거나 기존 정책을 붙여넣으십시오.
  2. 지시문을 활성화하고 공백으로 구분된 값을 편집한 후 경고를 확인하십시오.
  3. 출력 형식을 선택하고 복사한 다음 사이트의 리소스에 대해 테스트하십시오.

개인정보 보호 및 제한사항

정책은 브라우저에 저장됩니다. 어떤 웹사이트에도 접속하지 않습니다.

관련 도구

자주 묻는 질문

nonce 플레이스홀더를 그대로 사용할 수 있습니까?

아니요. 각 응답마다 예측할 수 없는 nonce를 생성하고, 신뢰할 수 있는 스크립트에 일치하는 값을 넣으십시오. 고정된 정적 헤더로는 nonce를 생성할 수 없습니다. 해시 플레이스홀더는 의도한 콘텐츠의 실제 해시로 바꾸십시오.

meta 정책으로 할 수 없는 작업은 무엇입니까?

frame-ancestors 또는 sandbox를 적용하거나 report-uri를 사용하거나 report-only 정책을 전달할 수 없습니다. 생성된 meta 출력에서는 보고 지시문이 제외되며, 문서 head 앞부분에 배치해야 합니다.

report-to가 보고 엔드포인트를 생성합니까?

아니요. 별도의 Reporting-Endpoints 응답 헤더가 필요한 그룹의 이름을 지정할 뿐입니다. report-uri는 더 오래된 방식이며 브라우저 지원 여부가 다릅니다. 이 도구는 보고서를 전송하지 않습니다.

프리셋이 제 웹사이트에서 작동한다고 보장됩니까?

아니요. report-only HTTP 전달로 시작하고 사이트에 필요한 리소스를 확인하십시오. 기존 정책은 새 정책과 함께 적용되므로, 두 번째 정책으로 이전 제한을 완화할 수 없습니다. 정적 _headers 전달은 동적으로 생성되는 응답에는 적용되지 않습니다.

무료 도구 · 브라우저에서회 실행 · 계정 불필요