smartsupp 채팅을 위해 yii2에서 콘텐츠 보안 정책 (CSP)을 추가하는 방법은 무엇입니까?

Dev 1

나는 꽤 잘 작동하는 Yii2 https://github.com/tomlutzenberger/yii2-smartsupp-chat 위젯을 사용 하고 있지만 웹 사이트에서 비디오를 녹화 할 수 없으며 CSP라는 것을 추가 할 것을 제안했습니다.

https://help.smartlook.com/en/articles/3470377-content-security-policy-csp-smartlook

누구든지 코드 아래에 정확히 어떻게 추가되는지 제안 할 수 있습니까?

Content-Security-Policy: default-src 'self'; script-src 'self' https://*.smartlook.com https://*.smartlook.cloud 'nonce-randomlyGeneratedBase64Nonce' 'unsafe-eval'; connect-src 'self' https://*.smartlook.com https://*.smartlook.cloud; worker-src 'self' blob:

<script nonce="randomlyGeneratedBase64Nonce">...Your Smartlook Tracking Script...</script>

@F Baghi 제안

$randomNonce = Yii::$app->security->generateRandomString(64);

$nonce = "nonce-$randomNonce";

$hostSubdomains = "https://*.smartlook.com https://*.smartlook.cloud";

Yii::$app->response->headers->add(
    'Content-Security-Policy',
    "default-src 'self'; script-src 'self' $hostSubdomains $nonce 'unsafe-eval'; connect-src 'self' $hostSubdomains; worker-src 'self' blob"
);
보조금
  1. YII2 프레임 워크에는 콘텐츠 보안 정책 및 기타 보안 헤더 구성을위한 보안 헤더 확장 이 있습니다. 이것은 선호되는 방법입니다.

  2. 또는 웹 서버 구성 에서 CSP를 설정할 수 있습니다 (페이지 하단의 예 참조). 이 경우 CSP를 관리하고 nonce-value토큰을 사용하는 것은 쉽지 않습니다 .

  3. 또한 메타 태그 에서 CSP를 설정할 수 있습니다 . 이 경우 모든 타사 스크립트가이를 훔쳐 nonce-value사용할 수 있으므로 가장 선호되지 않는 방법입니다.

그러나 CSP를 설정하는 방법과 위치를 모르는 경우 Smartlook에 대한 CSP 규칙을 설정 한 후 웹 페이지가 제대로 작동하지 않을 가능성이 큽니다. 위의 CSP 규칙은 Smartlook 소스 만 다루지 만 웹 페이지에는 자체 스크립트 / 스타일 / 글꼴 등
이 있기 때문입니다 . 따라서 Smartlook CSP 규칙을 결합하고 웹 페이지 CSP 규칙을 하나로 결합해야합니다.

가장 좋은 방법은 먼저 Content-Security-Policy-Report-Only: default-src 'self...보고 모드 로 설정 하고 브라우저 콘솔 오류 (개발 도구에서) 또는 위반 보고서를 확인하는 것입니다. 그 후 Content-Security-Policy: default-src 'self...강제 (차단) 모드 로 설정 합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

koa의 파일 유형에 따라 추가 콘텐츠 보안 정책을 설정하는 방법은 무엇입니까?

분류에서Dev

(CSP) 콘텐츠 보안 정책. 외부 liblary에서 추가 된 인라인 스타일을 처리하는 방법

분류에서Dev

KendoUI MVC에서 콘텐츠 보안 정책을 사용하려면 어떻게해야합니까?

분류에서Dev

레이어 안의 콘텐츠 앞뒤에 공백을 추가하는 방법은 무엇입니까?

분류에서Dev

IPSec 로컬 보안 정책을 위해 Win2k8에서 무제한 로컬 컴퓨터 통신을 허용하는 방법은 무엇입니까?

분류에서Dev

콘텐츠 보안 정책 오류 노드 앱을 수정하는 방법

분류에서Dev

콘텐츠 보안 정책이 서버에서 활성화 된 경우 북마크릿을 사용하여 페이지에 스크립트를 삽입하는 방법은 무엇입니까?

분류에서Dev

XSS 공격을 방지하기위한 Antisamy 또는 콘텐츠 보안 정책 또는 둘 다

분류에서Dev

NUXT의 SPA 모드에 대해 콘텐츠 보안 정책을 설정할 수 있습니까?

분류에서Dev

콘텐츠 보안 정책을 위반하여로드가 거부되었습니다.

분류에서Dev

VLC가 본 콘텐츠 해상도에 따라 창 크기를 자동으로 조정하는 것을 방지하는 방법은 무엇입니까?

분류에서Dev

다음 콘텐츠 보안 정책을 위반하여 'blob : ...'이미지로드를 거부했습니다.

분류에서Dev

''프레임이 다음 콘텐츠 보안 정책 지침을 위반하여 거부되었습니다.

분류에서Dev

콘텐츠 보안 정책은 v-html에서 XSS 공격을 거부합니다.

분류에서Dev

SignalR이 다음 콘텐츠 보안 정책 지침을 위반하여 [url]에 연결하는 것을 거부했습니다.

분류에서Dev

OnClick이 콘텐츠 보안 정책을 위반

분류에서Dev

Android 콘텐츠 제공 업체에서 찾을 수없는 콘텐츠 제공 업체 URL을 수정하는 방법은 무엇입니까?

분류에서Dev

Jsoup을 사용하여 HTML 콘텐츠에 패딩을 추가하는 방법은 무엇입니까?

분류에서Dev

URL을 암호화하고 액세스가 거부 된 콘텐츠에 액세스하기 위해 해독하는 방법은 무엇입니까?

분류에서Dev

Svelte에서 요소 콘텐츠의 스타일을 지정하는 방법은 무엇입니까?

분류에서Dev

데비안 패키지 : 활성화하기 위해 bashrc에 콘텐츠를 추가해야하는 설치를 처리하는 방법은 무엇입니까?

분류에서Dev

콘텐츠에 대해 점선 테두리가있는 사용자 지정 텍스트 입력을 만드는 방법은 무엇입니까?

분류에서Dev

다음 콘텐츠 보안 정책 지침 (connect-src)을 위반하여 x에 대한 연결을 거부했습니다.

분류에서Dev

CDK 애플리케이션에서 API Gateway에 보안 정책을 추가하는 방법은 무엇입니까?

분류에서Dev

태그 이름과 함께 모든 콘텐츠를 가져 오기 위해 iOS에서 html을 구문 분석하는 방법은 무엇입니까?

분류에서Dev

봄 콘텐츠 협상에 csv MimeType을 추가하는 방법은 무엇입니까?

분류에서Dev

봄 콘텐츠 협상에 csv MimeType을 추가하는 방법은 무엇입니까?

분류에서Dev

HTTP 서블릿 요청의 콘텐츠 유형을 결정하는 방법은 무엇입니까?

분류에서Dev

Django에서 콘텐츠 기반 해시 파일 이름이있는 웹팩 번들을 정적 파일로로드하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    koa의 파일 유형에 따라 추가 콘텐츠 보안 정책을 설정하는 방법은 무엇입니까?

  2. 2

    (CSP) 콘텐츠 보안 정책. 외부 liblary에서 추가 된 인라인 스타일을 처리하는 방법

  3. 3

    KendoUI MVC에서 콘텐츠 보안 정책을 사용하려면 어떻게해야합니까?

  4. 4

    레이어 안의 콘텐츠 앞뒤에 공백을 추가하는 방법은 무엇입니까?

  5. 5

    IPSec 로컬 보안 정책을 위해 Win2k8에서 무제한 로컬 컴퓨터 통신을 허용하는 방법은 무엇입니까?

  6. 6

    콘텐츠 보안 정책 오류 노드 앱을 수정하는 방법

  7. 7

    콘텐츠 보안 정책이 서버에서 활성화 된 경우 북마크릿을 사용하여 페이지에 스크립트를 삽입하는 방법은 무엇입니까?

  8. 8

    XSS 공격을 방지하기위한 Antisamy 또는 콘텐츠 보안 정책 또는 둘 다

  9. 9

    NUXT의 SPA 모드에 대해 콘텐츠 보안 정책을 설정할 수 있습니까?

  10. 10

    콘텐츠 보안 정책을 위반하여로드가 거부되었습니다.

  11. 11

    VLC가 본 콘텐츠 해상도에 따라 창 크기를 자동으로 조정하는 것을 방지하는 방법은 무엇입니까?

  12. 12

    다음 콘텐츠 보안 정책을 위반하여 'blob : ...'이미지로드를 거부했습니다.

  13. 13

    ''프레임이 다음 콘텐츠 보안 정책 지침을 위반하여 거부되었습니다.

  14. 14

    콘텐츠 보안 정책은 v-html에서 XSS 공격을 거부합니다.

  15. 15

    SignalR이 다음 콘텐츠 보안 정책 지침을 위반하여 [url]에 연결하는 것을 거부했습니다.

  16. 16

    OnClick이 콘텐츠 보안 정책을 위반

  17. 17

    Android 콘텐츠 제공 업체에서 찾을 수없는 콘텐츠 제공 업체 URL을 수정하는 방법은 무엇입니까?

  18. 18

    Jsoup을 사용하여 HTML 콘텐츠에 패딩을 추가하는 방법은 무엇입니까?

  19. 19

    URL을 암호화하고 액세스가 거부 된 콘텐츠에 액세스하기 위해 해독하는 방법은 무엇입니까?

  20. 20

    Svelte에서 요소 콘텐츠의 스타일을 지정하는 방법은 무엇입니까?

  21. 21

    데비안 패키지 : 활성화하기 위해 bashrc에 콘텐츠를 추가해야하는 설치를 처리하는 방법은 무엇입니까?

  22. 22

    콘텐츠에 대해 점선 테두리가있는 사용자 지정 텍스트 입력을 만드는 방법은 무엇입니까?

  23. 23

    다음 콘텐츠 보안 정책 지침 (connect-src)을 위반하여 x에 대한 연결을 거부했습니다.

  24. 24

    CDK 애플리케이션에서 API Gateway에 보안 정책을 추가하는 방법은 무엇입니까?

  25. 25

    태그 이름과 함께 모든 콘텐츠를 가져 오기 위해 iOS에서 html을 구문 분석하는 방법은 무엇입니까?

  26. 26

    봄 콘텐츠 협상에 csv MimeType을 추가하는 방법은 무엇입니까?

  27. 27

    봄 콘텐츠 협상에 csv MimeType을 추가하는 방법은 무엇입니까?

  28. 28

    HTTP 서블릿 요청의 콘텐츠 유형을 결정하는 방법은 무엇입니까?

  29. 29

    Django에서 콘텐츠 기반 해시 파일 이름이있는 웹팩 번들을 정적 파일로로드하는 방법은 무엇입니까?

뜨겁다태그

보관