{"id":58427,"date":"2020-08-12T16:36:30","date_gmt":"2020-08-12T20:36:30","guid":{"rendered":"https:\/\/www.inmotionhosting.com\/support\/?p=58427"},"modified":"2023-11-16T12:15:09","modified_gmt":"2023-11-16T17:15:09","slug":"moodle-local-csp-plugin","status":"publish","type":"post","link":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/","title":{"rendered":"How to Add Content Security Policy in Moodle With the Local CSP Plugin"},"content":{"rendered":"<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"538\" src=\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-1024x538.png\" alt=\"How to Add Content Security Policy in Moodle With the Local CSP Plugin Hero Image\" class=\"wp-image-107666\" srcset=\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-1024x538.png 1024w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-300x158.png 300w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-768x403.png 768w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide.png 1200w\" sizes=\"auto, (min-width: 1360px) 876px, (min-width: 960px) calc(61.58vw + 51px), calc(100vw - 80px)\" \/><\/figure>\n\n\n\n<p>The <a href=\"https:\/\/moodle.org\/plugins\/local_csp\" target=\"_blank\" rel=\"noreferrer noopener\">Local CSP Moodle plugin<\/a> allows administrators to create and manage the Content-Security-Policy (CSP) HTTP header without manually editing the .htaccess file. CSP works as an allowlist to specify what types of content, and from what origin (internal and external), <a href=\"https:\/\/caniuse.com\/#search=content-security-policy\" target=\"_blank\" rel=\"noreferrer noopener\">supporting web browsers<\/a> can load within your website. Think of it as a \u201ccode firewall.\u201d A good <a href=\"\/vps-hosting\">VPS web host<\/a> allows you to make these (and other) security interventions as needed.<\/p>\n\n\n\n<p>CSP supersedes X-Frame-Options and is one of many security HTTP headers that help mitigate cross-site scripting (XSS) and other code injection attacks to protect your users. Below we cover:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"#csp\">How to add CSP to Moodle<\/a><\/li>\n\n\n\n<li><a href=\"#report\">Managing Moodle CSP Violation Reports<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"csp\">Add Content-Security-Policy to Moodle<\/h2>\n\n\n\n<p>These steps cover installing the Local CSP Moodle plugin and configuring CSP to report and\/or enforce changes.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignright size-medium\"><a href=\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/attachment\/moodle-csp-default\/\"><img loading=\"lazy\" decoding=\"async\" width=\"175\" height=\"300\" src=\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-default-175x300.png\" alt=\"Local CSP Moodle plugin settings\" class=\"wp-image-58431\" srcset=\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-default-175x300.png 175w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-default-596x1024.png 596w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-default-768x1320.png 768w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-default-893x1536.png 893w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-default-1191x2048.png 1191w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-default.png 1232w\" sizes=\"auto, (min-width: 1360px) 876px, (min-width: 960px) calc(61.58vw + 51px), calc(100vw - 80px)\" \/><\/a><\/figure>\n<\/div>\n\n\n<ol class=\"article_list wp-block-list\">\n<li><a href=\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-login-administrator\/\">Log into Moodle as an administrator<\/a>.<\/li>\n\n\n\n<li>Install the <a href=\"https:\/\/moodle.org\/plugins\/local_csp\" target=\"_blank\" rel=\"noreferrer noopener\">Local CSP plugin<\/a>.<\/li>\n\n\n\n<li>On the left, select <strong>Site Administration<\/strong>.<\/li>\n\n\n\n<li>At the top, select <strong>Plugins<\/strong>.<\/li>\n\n\n\n<li>Scroll down and select <strong>Content security policy<\/strong> to view all options for Local CSP.<\/li>\n\n\n\n<li>Select <strong>CSP header enable<\/strong>.<\/li>\n\n\n\n<li>Add internal and external sources to their relative <code>src<\/code> options. The safest way to implement CSP is to first use <strong>Content-Security-Policy-Report-Only<\/strong> for a few hours or days depending on how many CSP violation reports you see later. This allows you to audit violation reports (covered below) for all important sources to add before enforcing CSP. Once you ensure all important sources are included in your report-only policy and you don\u2019t receive any violation reports, you should move everything in the <strong>report-only<\/strong> text area to the <strong>enforcing<\/strong> section at the bottom.<br><br>Below is a secure CSP example to get started if you\u2019d like a more verbose policy than the plugin provides. It allows the NPM package manager, Google Fonts, embedded privacy-enhanced YouTube videos, Spotify players, and embedded Tweets. Make changes as necessary to apply to your site.<pre class=\"wp-block-preformatted\">default-src 'none';<br>script-src 'self' https:\/\/cdn.jsdelivr.net\/npm\/;<br>style-src 'self' https:\/\/fonts.googleapis.com\/css; img-src 'self'; connect-src 'self';<br>font-src 'self' https:\/\/fonts.gstatic.com\/;<br>report-uri 'self';<br>worker-src 'self';<br>form-action 'self';<br>frame-ancestors 'self';<br>frame-src 'self' https:\/\/www.youtube-nocookie.com\/ https:\/\/open.spotify.com\/ https:\/\/*.twitter.com\/;<br>manifest-src 'self';<br>base-uri 'self';<br>block-all-mixed-content<\/pre><\/li>\n\n\n\n<li><strong>Save changes<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p class=\"alert alert-warning\">Before you <strong>enforce<\/strong> the <code>block-all-mixed-content<\/code> attribute, ensure your website has a valid <a href=\"https:\/\/www.inmotionhosting.com\/support\/website\/ssl\/auto-ssl-guide\/#free-vs-paid\">Free or Paid SSL Certificate<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"report\">Local CSP Violation Reports<\/h2>\n\n\n\n<p>At the bottom of the Local CSP plugin page, select <strong>CSP<\/strong><strong> violation reports<\/strong> to see URLs blocked by your current CSP. The violation report makes updating your CSP easier by stating:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignright size-medium\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"217\" src=\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-violation-reports-300x217.png\" alt=\"Example Local CSP violation reports\" class=\"wp-image-58428\" srcset=\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-violation-reports-300x217.png 300w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-violation-reports-1024x740.png 1024w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-violation-reports-768x555.png 768w, https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2020\/08\/moodle-csp-violation-reports.png 1228w\" sizes=\"auto, (min-width: 1360px) 876px, (min-width: 960px) calc(61.58vw + 51px), calc(100vw - 80px)\" \/><\/figure>\n<\/div>\n\n\n<ul class=\"wp-block-list\">\n<li>Which <code>src<\/code> policy type to add the blocked URI to if you wish to allow it<\/li>\n\n\n\n<li>What page of your website the blocked URI originates from<\/li>\n\n\n\n<li>How many times the URI has been blocked<\/li>\n<\/ul>\n\n\n\n<p>It\u2019s helpful to sanitize your violation reports after updating your CSP to include previously blocked URIs. To do so, select <strong>Reset<\/strong> to remove an individual URI or <strong>Reset all statistics<\/strong> to clear all reports.<\/p>\n\n\n\n<p>Content-Security-Policy can be time consuming. Even after you complete and enforce your allowlist, it\u2019s helpful to audit your online learning website with <a href=\"https:\/\/www.inmotionhosting.com\/blog\/8-free-cybersecurity-tools-to-secure-your-server\/#4\">cybersecurity tools<\/a> for ways to improve your policy. We recommend <a href=\"https:\/\/observatory.mozilla.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Observatory.Mozilla.org<\/a> which offers in-depth advice for how to harden CSP.<\/p>\n\n\n\n<p>Are you a cPanel VPS administrator? Check out our guide on <a href=\"https:\/\/www.inmotionhosting.com\/support\/product-guides\/vps-hosting\/ways-to-harden-your-vps-hosting\/\">hardening VPS security<\/a> for additional ways to increase server security. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Local CSP Moodle plugin allows administrators to create and manage the Content-Security-Policy (CSP) HTTP header without manually editing the .htaccess file. CSP works as an allowlist to specify what types of content, and from what origin (internal and external), supporting web browsers can load within your website. Think of it as a \u201ccode firewall.\u201d<a class=\"moretag\" href=\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/\"> Read More ><\/a><\/p>\n","protected":false},"author":57014,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[25],"tags":[],"class_list":["post-58427","post","type-post","status-publish","format-standard","hentry","category-moodle"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Add Content Security Policy with the Local CSP Moodle Plugin<\/title>\n<meta name=\"description\" content=\"Learn how to configure Content Security Policy (CSP) for your online classroom with the local CSP Moodle plugin for better website security.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Add Content Security Policy with the Local CSP Moodle Plugin\" \/>\n<meta property=\"og:description\" content=\"Learn how to configure Content Security Policy (CSP) for your online classroom with the local CSP Moodle plugin for better website security.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/\" \/>\n<meta property=\"og:site_name\" content=\"InMotion Hosting Support Center\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/inmotionhosting\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-08-12T20:36:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-16T17:15:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-1024x538.png\" \/>\n<meta name=\"author\" content=\"InMotion Hosting Contributor\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/InMotionHosting\" \/>\n<meta name=\"twitter:site\" content=\"@InMotionHosting\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"InMotion Hosting Contributor\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/\"},\"author\":{\"name\":\"InMotion Hosting Contributor\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#\/schema\/person\/f9a4fc454cd1df128ee8e898d30d4644\"},\"headline\":\"How to Add Content Security Policy in Moodle With the Local CSP Plugin\",\"datePublished\":\"2020-08-12T20:36:30+00:00\",\"dateModified\":\"2023-11-16T17:15:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/\"},\"wordCount\":510,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-1024x538.png\",\"articleSection\":[\"Moodle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/\",\"url\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/\",\"name\":\"How to Add Content Security Policy with the Local CSP Moodle Plugin\",\"isPartOf\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-1024x538.png\",\"datePublished\":\"2020-08-12T20:36:30+00:00\",\"dateModified\":\"2023-11-16T17:15:09+00:00\",\"description\":\"Learn how to configure Content Security Policy (CSP) for your online classroom with the local CSP Moodle plugin for better website security.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#primaryimage\",\"url\":\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide.png\",\"contentUrl\":\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide.png\",\"width\":1200,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.inmotionhosting.com\/support\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Add Content Security Policy in Moodle With the Local CSP Plugin\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#website\",\"url\":\"https:\/\/www.inmotionhosting.com\/support\/\",\"name\":\"InMotion Hosting Support Center\",\"description\":\"Web Hosting Support &amp; Tutorials\",\"publisher\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.inmotionhosting.com\/support\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#organization\",\"name\":\"InMotion Hosting\",\"url\":\"https:\/\/www.inmotionhosting.com\/support\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/02\/inmotion-hosting-logo-yoast.jpg\",\"contentUrl\":\"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/02\/inmotion-hosting-logo-yoast.jpg\",\"width\":696,\"height\":696,\"caption\":\"InMotion Hosting\"},\"image\":{\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/inmotionhosting\/\",\"https:\/\/x.com\/InMotionHosting\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.inmotionhosting.com\/support\/#\/schema\/person\/f9a4fc454cd1df128ee8e898d30d4644\",\"name\":\"InMotion Hosting Contributor\",\"description\":\"InMotion Hosting contributors are highly knowledgeable individuals who create relevant content on new trends and troubleshooting techniques to help you achieve your online goals!\",\"sameAs\":[\"https:\/\/www.linkedin.com\/company\/inmotion-hosting\/\",\"https:\/\/x.com\/https:\/\/twitter.com\/InMotionHosting\"],\"url\":\"https:\/\/www.inmotionhosting.com\/support\/author\/inmotion-hosting-contributor\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Add Content Security Policy with the Local CSP Moodle Plugin","description":"Learn how to configure Content Security Policy (CSP) for your online classroom with the local CSP Moodle plugin for better website security.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/","og_locale":"en_US","og_type":"article","og_title":"How to Add Content Security Policy with the Local CSP Moodle Plugin","og_description":"Learn how to configure Content Security Policy (CSP) for your online classroom with the local CSP Moodle plugin for better website security.","og_url":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/","og_site_name":"InMotion Hosting Support Center","article_publisher":"https:\/\/www.facebook.com\/inmotionhosting\/","article_published_time":"2020-08-12T20:36:30+00:00","article_modified_time":"2023-11-16T17:15:09+00:00","og_image":[{"url":"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-1024x538.png","type":"","width":"","height":""}],"author":"InMotion Hosting Contributor","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/InMotionHosting","twitter_site":"@InMotionHosting","twitter_misc":{"Written by":"InMotion Hosting Contributor","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#article","isPartOf":{"@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/"},"author":{"name":"InMotion Hosting Contributor","@id":"https:\/\/www.inmotionhosting.com\/support\/#\/schema\/person\/f9a4fc454cd1df128ee8e898d30d4644"},"headline":"How to Add Content Security Policy in Moodle With the Local CSP Plugin","datePublished":"2020-08-12T20:36:30+00:00","dateModified":"2023-11-16T17:15:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/"},"wordCount":510,"commentCount":0,"publisher":{"@id":"https:\/\/www.inmotionhosting.com\/support\/#organization"},"image":{"@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#primaryimage"},"thumbnailUrl":"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-1024x538.png","articleSection":["Moodle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/","url":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/","name":"How to Add Content Security Policy with the Local CSP Moodle Plugin","isPartOf":{"@id":"https:\/\/www.inmotionhosting.com\/support\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#primaryimage"},"image":{"@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#primaryimage"},"thumbnailUrl":"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide-1024x538.png","datePublished":"2020-08-12T20:36:30+00:00","dateModified":"2023-11-16T17:15:09+00:00","description":"Learn how to configure Content Security Policy (CSP) for your online classroom with the local CSP Moodle plugin for better website security.","breadcrumb":{"@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#primaryimage","url":"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide.png","contentUrl":"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/11\/Local-CSP-Plugin-Moodle-Guide.png","width":1200,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/moodle-local-csp-plugin\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.inmotionhosting.com\/support\/"},{"@type":"ListItem","position":2,"name":"How to Add Content Security Policy in Moodle With the Local CSP Plugin"}]},{"@type":"WebSite","@id":"https:\/\/www.inmotionhosting.com\/support\/#website","url":"https:\/\/www.inmotionhosting.com\/support\/","name":"InMotion Hosting Support Center","description":"Web Hosting Support &amp; Tutorials","publisher":{"@id":"https:\/\/www.inmotionhosting.com\/support\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.inmotionhosting.com\/support\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.inmotionhosting.com\/support\/#organization","name":"InMotion Hosting","url":"https:\/\/www.inmotionhosting.com\/support\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.inmotionhosting.com\/support\/#\/schema\/logo\/image\/","url":"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/02\/inmotion-hosting-logo-yoast.jpg","contentUrl":"https:\/\/www.inmotionhosting.com\/support\/wp-content\/uploads\/2023\/02\/inmotion-hosting-logo-yoast.jpg","width":696,"height":696,"caption":"InMotion Hosting"},"image":{"@id":"https:\/\/www.inmotionhosting.com\/support\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/inmotionhosting\/","https:\/\/x.com\/InMotionHosting"]},{"@type":"Person","@id":"https:\/\/www.inmotionhosting.com\/support\/#\/schema\/person\/f9a4fc454cd1df128ee8e898d30d4644","name":"InMotion Hosting Contributor","description":"InMotion Hosting contributors are highly knowledgeable individuals who create relevant content on new trends and troubleshooting techniques to help you achieve your online goals!","sameAs":["https:\/\/www.linkedin.com\/company\/inmotion-hosting\/","https:\/\/x.com\/https:\/\/twitter.com\/InMotionHosting"],"url":"https:\/\/www.inmotionhosting.com\/support\/author\/inmotion-hosting-contributor\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"primary_category":{"id":25,"name":"Moodle","slug":"moodle","link":"https:\/\/www.inmotionhosting.com\/support\/edu\/moodle\/"},"_links":{"self":[{"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/posts\/58427","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/users\/57014"}],"replies":[{"embeddable":true,"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/comments?post=58427"}],"version-history":[{"count":19,"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/posts\/58427\/revisions"}],"predecessor-version":[{"id":107913,"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/posts\/58427\/revisions\/107913"}],"wp:attachment":[{"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/media?parent=58427"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/categories?post=58427"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.inmotionhosting.com\/support\/wp-json\/wp\/v2\/tags?post=58427"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}