Skip to content

Commit

Permalink
#11
Browse files Browse the repository at this point in the history
Signed-off-by: Bruno Meilick <b@bnomei.com>
  • Loading branch information
bnomei committed Mar 27, 2019
1 parent 49e1f19 commit 62bb843
Show file tree
Hide file tree
Showing 8 changed files with 40 additions and 21 deletions.
19 changes: 16 additions & 3 deletions classes/SecurityHeaders.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,16 @@ class SecurityHeaders
{
private static function enabled()
{
return option('bnomei.securityheaders.enabled') && !static::isWebpack() && !static::isLocalhost();
$inPanel = static::isPanel() ? option('bnomei.securityheaders.enabled.panel') : true;
return option('bnomei.securityheaders.enabled') && $inPanel && !static::isWebpack() && !static::isLocalhost();
}

private static function isPanel()
{
return strpos(
kirby()->request()->url()->toString(),
kirby()->urls()->panel
) !== false;
}

public static function headers($headers)
Expand Down Expand Up @@ -55,9 +64,13 @@ private static function isLocalhost()
return in_array($_SERVER['REMOTE_ADDR'], array( '127.0.0.1', '::1' ));
}

public static function apply() {
// https://github.com/Martijnc/php-csp
public static function apply()
{
if (!static::enabled()) {
return;
}

// https://github.com/Martijnc/php-csp
$policy = new ContentSecurityPolicyHeaderBuilder();

$csp = option('bnomei.securityheaders.csp', []);
Expand Down
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "bnomei/kirby3-security-headers",
"type": "kirby-plugin",
"version": "1.1.1",
"version": "1.1.2",
"license": "MIT",
"description": "Kirby 3 Plugin for easier Security Headers setup",
"authors": [
Expand Down
12 changes: 6 additions & 6 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion index.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
Kirby::plugin('bnomei/securityheaders', [
'options' => [
'enabled' => true,
'enabled.panel' => false,
'route.before' => true,
'headers' => [
"X-Powered-By" => "", // unset
Expand Down Expand Up @@ -39,4 +40,4 @@
return $n;
}
]
]);
]);
5 changes: 5 additions & 0 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,14 @@ A `route:before`-hook will take care of setting the headers automatically on all

## Settings

All settings need to be prefiex with `bnomei.securityheaders.`.

**enabled**
- default: `true` will set headers

**enabled.panel**
- default: `false` will not set headers in panel

**route.before**
- default: `true` will set headers with a `route:before`-hook

Expand Down
2 changes: 1 addition & 1 deletion vendor/autoload.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@

require_once __DIR__ . '/composer/autoload_real.php';

return ComposerAutoloaderInitbc897b64e5a0d41424eb41dc6a524c9e::getLoader();
return ComposerAutoloaderInit1218331689125948020e3299cb3f7f63::getLoader();
8 changes: 4 additions & 4 deletions vendor/composer/autoload_real.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

// autoload_real.php @generated by Composer

class ComposerAutoloaderInitbc897b64e5a0d41424eb41dc6a524c9e
class ComposerAutoloaderInit1218331689125948020e3299cb3f7f63
{
private static $loader;

Expand All @@ -19,15 +19,15 @@ public static function getLoader()
return self::$loader;
}

spl_autoload_register(array('ComposerAutoloaderInitbc897b64e5a0d41424eb41dc6a524c9e', 'loadClassLoader'), true, true);
spl_autoload_register(array('ComposerAutoloaderInit1218331689125948020e3299cb3f7f63', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
spl_autoload_unregister(array('ComposerAutoloaderInitbc897b64e5a0d41424eb41dc6a524c9e', 'loadClassLoader'));
spl_autoload_unregister(array('ComposerAutoloaderInit1218331689125948020e3299cb3f7f63', 'loadClassLoader'));

$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
if ($useStaticLoader) {
require_once __DIR__ . '/autoload_static.php';

call_user_func(\Composer\Autoload\ComposerStaticInitbc897b64e5a0d41424eb41dc6a524c9e::getInitializer($loader));
call_user_func(\Composer\Autoload\ComposerStaticInit1218331689125948020e3299cb3f7f63::getInitializer($loader));
} else {
$map = require __DIR__ . '/autoload_namespaces.php';
foreach ($map as $namespace => $path) {
Expand Down
10 changes: 5 additions & 5 deletions vendor/composer/autoload_static.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace Composer\Autoload;

class ComposerStaticInitbc897b64e5a0d41424eb41dc6a524c9e
class ComposerStaticInit1218331689125948020e3299cb3f7f63
{
public static $prefixLengthsPsr4 = array (
'K' =>
Expand Down Expand Up @@ -54,10 +54,10 @@ class ComposerStaticInitbc897b64e5a0d41424eb41dc6a524c9e
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
$loader->prefixLengthsPsr4 = ComposerStaticInitbc897b64e5a0d41424eb41dc6a524c9e::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInitbc897b64e5a0d41424eb41dc6a524c9e::$prefixDirsPsr4;
$loader->prefixesPsr0 = ComposerStaticInitbc897b64e5a0d41424eb41dc6a524c9e::$prefixesPsr0;
$loader->classMap = ComposerStaticInitbc897b64e5a0d41424eb41dc6a524c9e::$classMap;
$loader->prefixLengthsPsr4 = ComposerStaticInit1218331689125948020e3299cb3f7f63::$prefixLengthsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit1218331689125948020e3299cb3f7f63::$prefixDirsPsr4;
$loader->prefixesPsr0 = ComposerStaticInit1218331689125948020e3299cb3f7f63::$prefixesPsr0;
$loader->classMap = ComposerStaticInit1218331689125948020e3299cb3f7f63::$classMap;

}, null, ClassLoader::class);
}
Expand Down

0 comments on commit 62bb843

Please sign in to comment.