SilverStripe CSP headers

ControllerCSPExtension extends Extension

Class \Firesphere\CSPHeaders\Extensions\ControllerCSPExtension

Table of Contents

Properties

$isTesting  : bool
$owner  : Controller|ControllerCSPExtension
$addPolicyHeaders  : bool
Should we generate the policy headers or not
$csp_config  : array<string|int, mixed>
Base CSP configuration
$inlineCSS  : array<string|int, mixed>
$inlineJS  : array<string|int, mixed>
$nonce  : string

Methods

addCSS()  : mixed
addJS()  : mixed
checkCookie()  : bool
getInlineCSS()  : array<string|int, mixed>
getInlineJS()  : array<string|int, mixed>
getNonce()  : null|string
isAddPolicyHeaders()  : bool
onBeforeInit()  : void
Add the needed headers from the database and config
addCSP()  : void
addInlineCSSPolicy()  : void
addInlineJSPolicy()  : void
addResponseHeaders()  : void
addCSPHeaders()  : void

Properties

$isTesting

public static bool $isTesting = false

Public setting to avoid certain unnecessary effects during testing

$csp_config

Base CSP configuration

protected static array<string|int, mixed> $csp_config
Tags
config

$nonce

protected string $nonce

randomised sha512 nonce for enabling scripts if you don't want to use validating of the full script

Methods

checkCookie()

public static checkCookie(HTTPRequest $request) : bool
Parameters
$request : HTTPRequest
Return values
bool

getInlineCSS()

public static getInlineCSS() : array<string|int, mixed>
Return values
array<string|int, mixed>

getInlineJS()

public static getInlineJS() : array<string|int, mixed>
Return values
array<string|int, mixed>

onBeforeInit()

Add the needed headers from the database and config

public onBeforeInit() : void
Tags
throws
Exception

addCSP()

protected addCSP(CSPBuilder $policy, Controller $owner) : void
Parameters
$policy : CSPBuilder
$owner : Controller

addInlineCSSPolicy()

protected addInlineCSSPolicy(CSPBuilder $policy, array<string|int, mixed> $config) : void
Parameters
$policy : CSPBuilder
$config : array<string|int, mixed>
Tags
throws
Exception

addInlineJSPolicy()

protected addInlineJSPolicy(CSPBuilder $policy, array<string|int, mixed> $config) : void
Parameters
$policy : CSPBuilder
$config : array<string|int, mixed>
Tags
throws
Exception

addResponseHeaders()

protected addResponseHeaders(array<string|int, mixed> $headers, Controller $owner) : void
Parameters
$headers : array<string|int, mixed>
$owner : Controller

addCSPHeaders()

private addCSPHeaders(mixed $ymlConfig, Controller|null $owner) : void
Parameters
$ymlConfig : mixed
$owner : Controller|null
Tags
throws
Exception

        
On this page

Search results