summaryrefslogtreecommitdiffstatshomepage
path: root/core/modules/jsonapi/jsonapi.install
diff options
context:
space:
mode:
authorwebchick <drupal@webchick.net>2019-10-09 23:33:02 -0700
committerwebchick <drupal@webchick.net>2019-10-09 23:33:02 -0700
commit1c299c6d91a6091fdf0fe3417ef49467e484853c (patch)
tree237bdc72bd38eb2611b8e6e64519fc1ddd972079 /core/modules/jsonapi/jsonapi.install
parent7b5662f59e3b3a7f556c0469c3004590cc63815b (diff)
downloaddrupal-1c299c6d91a6091fdf0fe3417ef49467e484853c.tar.gz
drupal-1c299c6d91a6091fdf0fe3417ef49467e484853c.zip
Issue #3068275 by Wim Leers, alexpott, shimpy, gabesullice, xjm: Add status report message about JSON:API's read-only mode
Diffstat (limited to 'core/modules/jsonapi/jsonapi.install')
-rw-r--r--core/modules/jsonapi/jsonapi.install15
1 files changed, 14 insertions, 1 deletions
diff --git a/core/modules/jsonapi/jsonapi.install b/core/modules/jsonapi/jsonapi.install
index add7e17ddc30..a1ada646df33 100644
--- a/core/modules/jsonapi/jsonapi.install
+++ b/core/modules/jsonapi/jsonapi.install
@@ -5,6 +5,8 @@
* Module install file.
*/
+use Drupal\Core\Url;
+
/**
* Implements hook_install().
*/
@@ -58,7 +60,18 @@ function jsonapi_requirements($phase) {
':jsonapi-docs' => 'https://www.drupal.org/docs/8/modules/jsonapi/revisions',
]),
];
-
+ $requirements['jsonapi_read_only_mode'] = [
+ 'title' => t('JSON:API allowed operations'),
+ 'value' => t('Read-only'),
+ 'severity' => REQUIREMENT_INFO,
+ ];
+ if (!\Drupal::configFactory()->get('jsonapi.settings')->get('read_only')) {
+ $requirements['jsonapi_read_only_mode']['value'] = t('All (create, read, update, delete)');
+ $requirements['jsonapi_read_only_mode']['description'] = t('It is recommended to <a href=":configure-url">configure</a> JSON:API to only accept all operations if the site requires it. <a href=":docs">Learn more about securing your site with JSON:API.</a>', [
+ ':docs' => 'https://www.drupal.org/docs/8/modules/jsonapi/security-considerations',
+ ':configure-url' => Url::fromRoute('jsonapi.settings')->toString(),
+ ]);
+ }
}
return $requirements;
}