2017-10-07 14 views
0

현재 WordPress 방문 페이지에 콘텐츠 보안 정책을 구현하려고합니다. 나는 콘텐츠 보안 정책 구현하는 PHP에서 다음 헤더 방법을 사용하고 있습니다 :PHP 헤더 - 메서드를 사용하여 PHP에서 WordPress Nonce로 콘텐츠 보안 정책을 구현하는 방법은 무엇입니까?

header("Content-Security-Policy:default-src 'none'; script-src 'nonce-RandomSeq' 'nonce-hzthedtrh5' 'nonce-hjjftzrf56zf' ... ") 

을 그리고 나는 인라인 자바 스크립트 코드

<?php 
$nonce = wp_create_nonce('my-nonce'); ?> 

<script type="text/javascript" nonce="<?php echo $nonce; ?>"> 
    // some javascript code 
</script> 

이 예제 작품 임의 난스를 만들 WordPress Nonce를 사용하려고 시도하고있다 나는 "435234JHHJK2"와 같은 문자열로 넌스를에서 지정할하지만이 같은 헤더에 변수를 넣어하려고 할 때 때

header("Content-Security-Policy:default-src 'none'; script-src 'nonce-".$nonce."' 'nonce-hzthedtrh5' 'nonce-hjjftzrf56zf' ... ") 

랜덤 넌스 작성 by wp-nonce가 인식되지 않고 주어진 스크립트가 실행되지 않습니다.

그래서 내가 뭘 잘못하고 있니?

답변

0

솔루션을 찾을 수 :

$csp = "Content-Security-Policy: script-src 'nonce-".$nonce1."' 'nonce-".$nonce2."'..."; 

을이를 포함 :

PHP는 'noce-".$nonce."' 솔루션은 외부 문자열 변수에 CSP 정보의 전체를 저장하는 것입니다에 liike 작은 따옴표로 변수를 허용하지 않습니다 변수를 PHP 헤더 메서드에 넣습니다.

header("{$csp}");