googlechromelabs/ise-web-security-bundle
A Symfony bundle from Google Chrome Labs that integrates ISE web security tooling into PHP applications. It helps developers configure browser security policies, apply security headers, and harden responses against common web threats with minimal setup and straightforward Symfony integration.
SharedArrayBuffer, high-resolution timers, and certain WASM/threading paths — but COEP: require-corp breaks third-party embeds, images, fonts, and marketing/analytics pixels that don't send CORP/CORS headers. This package is now an input to a real product tradeoff: "do we want cross-origin isolation badly enough to audit and renegotiate every third-party embed?" That decision belongs to a PM, not only to security.Content-Security-Policy: require-trusted-types-for 'script' plus a report-only phase, a policy allowlist, and DOM-sink remediation across templates. The package's config tree is a template for that rollout sequencing — which maps directly onto how you write phased acceptance criteria and a release plan.Consider it (as a reading and a design reference) when:
SharedArrayBuffer, performance-sensitive client work) and need to enumerate the blast radius on third-party embeds before committing.config/security_headers.php.Look elsewhere when:
spatie/laravel-csp, bepsvpt/secure-headers, or first-party middleware. Note that the two most valuable new items — COEP and Trusted Types — are precisely the ones with no drop-in Laravel equivalent; budget design time, not composer require time.COEP: require-corp will break them. Adopt the reference selectively — COOP, Fetch Metadata, and CSP can be staged independently of COEP.composer.json constraints. Do not assume the v1.0 tag implies PHP 8 support.To executives: The project we reviewed as an archived Google Labs reference just published a v1.0 adding four modern browser-security features — cross-origin isolation (COOP/COEP), Fetch Metadata, and Trusted Types. That makes it a better design reference for our hardening workstream, not a better dependency. Recommendation is unchanged in direction and modestly larger in scope: a short spike to extract the policy and configuration structure, then implement natively in Laravel middleware. Cost estimate rises from roughly one engineer-week to one-to-two, because Trusted Types and COEP require staged rollout and a third-party-embed audit rather than a header change. We still add nothing to our dependency tree, and we should re-confirm the repository's maintenance status before citing it as a current standard.
To engineering: Still read it, don't composer require it — but read more of it than last time. v1.0 adds COOP, COEP, Fetch Metadata, and Trusted Types plus a fuller configuration tree, which is the interesting part: it shows how these policies are composed, not just which headers exist. Before we lean on it, verify three things in the repo: whether it is still archived, who is releasing, and the PHP constraint / CI matrix (our assumption of PHP 7.x-only needs checking). Then extract into first-party Laravel middleware with tests. Two cautions when porting: COEP: require-corp is a breaking change for any third-party resource lacking CORP/CORS headers, so it ships behind a report-only phase and an inventory of embeds; and Trusted Types requires a CSP require-trusted-types-for 'script' directive, a named policy allowlist, and DOM-sink remediation — plan it as a multi-PR migration, not a header addition. COOP and Fetch Metadata are the low-risk, high-value pieces and can land first.
How can I help you explore Laravel packages today?