Newer
Older
<?php
class JsonapiDangerousRoutesConfig extends Migration
{
public function description()
{
return 'Adds system config option allowing possibly dangerous JSONAPI routes '
.'(e.g. root-users may delete users).';
}
/**
* @SuppressWarnings(ShortMethodName)
*/
public function up()
{
$query = "INSERT INTO `config` (
`field`, `value`, `type`, `range`, `section`,
`mkdate`, `chdate`,
`description`
) VALUES (
'JSONAPI_DANGEROUS_ROUTES_ALLOWED', '0', 'boolean', 'global', 'global',
UNIX_TIMESTAMP(), UNIX_TIMESTAMP(),
'Wenn diese Einstellung gesetzt ist, dürfen auch potentiell gefährliche JSONAPI-Routen genutzt werden. (Zum Beispiel dürfen dann root-Nutzer auch andere Nutzer löschen.)'
)";
DBManager::get()->exec($query);
}
public function down()
{
$query = "DELETE `config`, `config_values`
FROM `config`
LEFT JOIN `config_values` USING (`field`)
WHERE `field` = 'JSONAPI_DANGEROUS_ROUTES_ALLOWED'";
DBManager::get()->exec($query);
}
}