플러그인에 CSP 소스 추가

Mitigate XSS Attacks with Content Security Policy 에 따르면 CSP 정책에서 소스 집합을 추가할 수 있습니다.

위와 같은 Google AdSense용 소스 그룹을 추가하는 것이 좋을 것 같습니다. 이렇게 하면 고급 사용자를 제외한 일반 사용자도 플러그인을 더 쉽게 설정할 수 있습니다.

CSP Violation: 'https://partner.googleadservices.com'
CSP Violation: 'https://tpc.googlesyndication.com'
CSP Violation: 'https://pagead2.googlesyndication.com'
CSP Violation: 'https://adservice.google.com'
``

동의합니다! 최근에도 이 이유 때문에 특정 사이트에서 광고가 제대로 표시되지 않아서 원인을 찾는 데 꽤 시간이 걸렸거든요.

정말 충분한가요? google*.com 도메인이 목록에 포함되어 있어도, 다른 도메인에서 로드되는 기타 자산으로 인해 CSP 위반이 계속 발생하는 것 같습니다. 게다가 구글은 언제든 광고 자산의 출처를 변경할 수 있습니다. 또한, 사용자가 플러그인을 설치했는데 아무런 확인 없이 광고Sense, Ad Manager, Amazon, CodeFund, Carbon Ads 및 플러그인에 포함된 기타 모든 자원이 보안 설정에 자동으로 추가되는 상황은 의외로 받아들여질 것입니다.

그렇지는 않지만, 좋은 시작입니다. Google도 google.com.mx나 google.co.ve와 같은 지역화된 도메인에서 메일을 보내거든요.

또 다른 제안은, 플러그인 문서에 CSP 관련 항목을 추가하고, 사용자가 어떻게 처리할지 스스로 결정할 수 있도록 하는 것입니다.

지난 9월에 추가되었습니다: Discourse Advertising Plugin (Ads)

:raised_hand: 저 역시 마찬가지입니다. 특히 업그레이드 시점에 제한적인 설정을 기본으로 활성화하는 것은 항상 위험(나쁜 관행)합니다. 무엇이 문제인지 파악하는 데 시간이 좀 걸렸죠.

(이 설정은 외부 쿠키 동의 스크립트도 깨뜨리는데, 이 스크립트들은 매우 번거롭지만 일종의 법적 요구 사항입니다)

기본값으로 Google js에 커뮤니티의 키를 넘겨줄 수는 없으며, 공식 Google 문서에 필요한 모든 소스가 포함되어 있지 않고 언제든 변경될 수 있기(이미 변경되었을 수도) 때문에 CSP 설정에 추가할 소스 목록을 제안하는 것도 불가능합니다. 지난주에 한 고객과 이 문제를 겪어 보았는데(동작하려면 19개의 소스를 추가해야 했음), Google 광고를 사용하면서 CSP를 활성화하는 것은 고통스러운 일이 될 것이며, 플러그인에서 이를 자동화할 수도 없습니다.