<?xml version="1.0" encoding="UTF-8" ?><!-- generator=Zoho Sites --><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><atom:link href="https://www.gtconsult.com/blogs/tag/microsoft-365/feed" rel="self" type="application/rss+xml"/><title>GTconsult - Blog #Microsoft 365</title><description>GTconsult - Blog #Microsoft 365</description><link>https://www.gtconsult.com/blogs/tag/microsoft-365</link><lastBuildDate>Wed, 01 Apr 2026 03:02:45 -0700</lastBuildDate><generator>http://zoho.com/sites/</generator><item><title><![CDATA[SharePoint CSP: Lessons Learned After Enforcement]]></title><link>https://www.gtconsult.com/blogs/post/sharepoint-csp-lessons-learned-after-enforcement</link><description><![CDATA[<img align="left" hspace="5" src="https://www.gtconsult.com/Blog Site/ff.png"/>CSP enforcement went live 1 March 2026. Here's what actually broke, what held up fine, and what every SharePoint environment can learn from the aftermath.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_Q6SZuOenRqiDkCfrsU0N4Q" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_NmnIylMfQPqheGXhzNLHMQ" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_L_ax5l0hR3yT5B--e0CSeA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_uUa3_U0GSC2E3hsu6cj1SA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-center zptext-align-tablet-center " data-editor="true"><p><span><span>1 March came and went. Here's what actually broke, what held up fine, and what everyone who was &quot;planning to deal with it later&quot; is dealing with right now.</span></span></p></div>
</div><div data-element-id="elm_YoFmLtA41Kja8z_ERT5vNQ" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_YoFmLtA41Kja8z_ERT5vNQ"] .zpimage-container figure img { width: 754px !important ; height: 424px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/ff.png" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_FlA9Xv0yH7eALNPgQEOKwQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>Microsoft's SharePoint Online Content Security Policy enforcement went live on 1 March 2026. For teams that had prepared, audited their violations, refactored inline scripts, registered trusted sources: it was a non-event. For those who hadn't, it was a rough Monday morning. This post captures what we've seen in the aftermath: what broke, what didn't, and what the experience teaches us about managing security changes in a modern SharePoint environment.</span></span></p></div>
</div></div></div></div></div><div data-element-id="elm_4Uc-2ob9fuW9PZ5xgrWcSQ" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_Q7luIxAdNeysCMZzJPxl0A" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_b5alVDLHoQH9iRjLnTBaAg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_CSMKF17qOBxt4w6xsSzWjQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>What Actually Broke</strong></h3></div>
</div></div></div></div><div data-element-id="elm_5vbdPeSXnUrmXkJhoL_wwg" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_SKEtigDZdosX7RqEGAx_vQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_zsDv8xZ2p_HFvEMhDx8Omw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_GUepag85OQ-ITOevYXbZYg" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_GUepag85OQ-ITOevYXbZYg"].zpelem-text { border-style:solid; border-color:#E21D1D !important; border-block-start-width:3px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:0px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span style="color:rgb(180, 45, 45);"><br/></span></p><p><span style="color:rgb(180, 45, 45);">Commonly Affected</span></p></div>
</div><div data-element-id="elm_5q7oWbhJPBnO9i3S7CJIhA" data-element-type="imageheadingtext" class="zpelement zpelem-imageheadingtext "><style> @media (min-width: 992px) { [data-element-id="elm_5q7oWbhJPBnO9i3S7CJIhA"] .zpimageheadingtext-container figure img { width: 52px !important ; height: 52px !important ; } } @media (max-width: 767px) { [data-element-id="elm_5q7oWbhJPBnO9i3S7CJIhA"] .zpimageheadingtext-container figure img { width:50px ; height:50px ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimageheadingtext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-left zpimage-mobile-align-left zpimage-size-custom zpimage-tablet-fallback-medium zpimage-mobile-fallback-medium zpimage-text-seperate-line "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/23.png" width="50" height="50" loading="lazy" size="custom" data-lightbox="false"/></picture></span></figure><div class="zpimage-headingtext-container"><h4 class="zpimage-heading zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left" data-editor="true"><span>Inline Scripts in Content Editor Web Parts</span><br/>​</h4><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p><span><span>Classic content editor web parts with embedded JavaScript were one of the most common failure points. Many organisations had years-old scripts sitting in these parts that nobody had touched, and nobody realised were inline until they stopped working.</span></span></p></div>
</div></div></div></div><div data-element-id="elm_yPXKyKdYbIj-uxTXpO71gg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_7bCNpHgoS0Bn1euXrHX3XA" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_7bCNpHgoS0Bn1euXrHX3XA"].zpelem-text { border-style:solid; border-color:#E21D1D !important; border-block-start-width:3px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:0px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span style="color:rgb(180, 45, 45);"><br/></span></p><p><span style="color:rgb(180, 45, 45);">Commonly Affected</span></p></div>
</div><div data-element-id="elm_VsLjvQMP9aFZOSOjT2qZ2Q" data-element-type="imageheadingtext" class="zpelement zpelem-imageheadingtext "><style> @media (min-width: 992px) { [data-element-id="elm_VsLjvQMP9aFZOSOjT2qZ2Q"] .zpimageheadingtext-container figure img { width: 50px !important ; height: 50px !important ; } } @media (max-width: 767px) { [data-element-id="elm_VsLjvQMP9aFZOSOjT2qZ2Q"] .zpimageheadingtext-container figure img { width:50px ; height:50px ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimageheadingtext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-left zpimage-mobile-align-left zpimage-size-custom zpimage-tablet-fallback-medium zpimage-mobile-fallback-medium zpimage-text-seperate-line "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/24.png" width="50" height="50" loading="lazy" size="custom" data-lightbox="false"/></picture></span></figure><div class="zpimage-headingtext-container"><h4 class="zpimage-heading zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left" data-editor="true"><span>Third-Party Integrations Using Dynamic Injection<br/></span></h4><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p><span><span>Analytics tools, chatbots, CRM connectors, and similar third-party solutions that inject scripts dynamically at runtime without pre-registration were blocked. Some vendors had updated their SharePoint integrations ahead of enforcement; others hadn't.</span></span></p></div>
</div></div></div></div><div data-element-id="elm_qInmHVpg5hqcmory-Of-yA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_kAdd6MxMSynBnsjmaJJZEw" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_kAdd6MxMSynBnsjmaJJZEw"].zpelem-text { border-style:solid; border-color:#F1C40F !important; border-block-start-width:3px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:0px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span style="color:rgb(180, 45, 45);"><br/></span></p><p><span style="color:rgb(241, 196, 15);">Partially Affected</span></p></div>
</div><div data-element-id="elm_mRRLIBsJvobvX52pk-4DEg" data-element-type="imageheadingtext" class="zpelement zpelem-imageheadingtext "><style> @media (min-width: 992px) { [data-element-id="elm_mRRLIBsJvobvX52pk-4DEg"] .zpimageheadingtext-container figure img { width: 47px !important ; height: 47px !important ; } } @media (max-width: 767px) { [data-element-id="elm_mRRLIBsJvobvX52pk-4DEg"] .zpimageheadingtext-container figure img { width:50px ; height:50px ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimageheadingtext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-left zpimage-mobile-align-left zpimage-size-custom zpimage-tablet-fallback-medium zpimage-mobile-fallback-medium zpimage-text-seperate-line "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/25.png" width="50" height="50" loading="lazy" size="custom" data-lightbox="false"/></picture></span></figure><div class="zpimage-headingtext-container"><h4 class="zpimage-heading zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left" data-editor="true"><span>Custom SPFx Web Parts with Dynamic Loading<br/></span></h4><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p><span><span>Web parts using&nbsp; </span><code>SPComponentLoader.loadScript()</code><span>&nbsp;to pull in external libraries at runtime worked fine if those sources were pre-registered in Trusted Script Sources, and broke if they weren't. The split outcome here caught some teams off guard who assumed their SPFx solutions were automatically safe.</span></span></p></div>
</div></div></div></div></div><div data-element-id="elm_hV5ZFuicEXZdQjCvwHj7hw" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_SLhKS1VIn_LnXlY2zK91Iw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_SEFA-LZ5-Gpb0wrHC537uw" data-element-type="spacer" class="zpelement zpelem-spacer "><style> div[data-element-id="elm_SEFA-LZ5-Gpb0wrHC537uw"] div.zpspacer { height:33px; } @media (max-width: 768px) { div[data-element-id="elm_SEFA-LZ5-Gpb0wrHC537uw"] div.zpspacer { height:calc(33px / 3); } } </style><div class="zpspacer " data-height="33"></div>
</div></div></div><div data-element-id="elm_avkD92zJNqVyFjTKCqzluQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_l3PJoMyQSrujx2V-pERbAw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_Xf6kvrjtppshCMGxzixi9g" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_Xf6kvrjtppshCMGxzixi9g"].zpelem-text { border-style:solid; border-color:#A6CE39 !important; border-block-start-width:3px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:0px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span style="color:rgb(180, 45, 45);"><br/></span></p><p><span style="color:rgb(166, 206, 57);">Unaffected</span></p></div>
</div><div data-element-id="elm_micSr6onUofH0l6Xh_buSA" data-element-type="imageheadingtext" class="zpelement zpelem-imageheadingtext "><style> @media (min-width: 992px) { [data-element-id="elm_micSr6onUofH0l6Xh_buSA"] .zpimageheadingtext-container figure img { width: 52px !important ; height: 52px !important ; } } @media (max-width: 767px) { [data-element-id="elm_micSr6onUofH0l6Xh_buSA"] .zpimageheadingtext-container figure img { width:50px ; height:50px ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimageheadingtext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-left zpimage-mobile-align-left zpimage-size-custom zpimage-tablet-fallback-medium zpimage-mobile-fallback-medium zpimage-text-seperate-line "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/26.png" width="50" height="50" loading="lazy" size="custom" data-lightbox="false"/></picture></span></figure><div class="zpimage-headingtext-container"><h4 class="zpimage-heading zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left" data-editor="true"><span>Standard SPFx Bundles via cdnBasePath or externals<br/></span></h4><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p><span><span>Solutions deployed through proper SPFx packaging, bundles referenced via&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);font-family:&quot;Courier New&quot;, monospace;">&nbsp;</span></span><code style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);font-family:&quot;Courier New&quot;, monospace;">cdnBasePath&nbsp;</code><span>&nbsp;or external libraries declared in&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);font-family:&quot;Courier New&quot;, monospace;">&nbsp;</span></span><code style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);font-family:&quot;Courier New&quot;, monospace;">config.json&nbsp;</code><span>, were automatically added to Trusted Script Sources on installation and were entirely unaffected by enforcement.</span></span></p></div>
</div></div></div></div><div data-element-id="elm_RWoaloQBiSIXdiArZcHRbQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_-_4Ze6htLK7-1apUCiyN-Q" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_-_4Ze6htLK7-1apUCiyN-Q"].zpelem-text { border-style:solid; border-color:#A6CE39 !important; border-block-start-width:3px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:0px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span style="color:rgb(180, 45, 45);"><br/></span></p><p><span style="color:rgb(166, 206, 57);">Unaffected</span></p></div>
</div><div data-element-id="elm_e3HEFndZRDUhMwa6Tc1YcQ" data-element-type="imageheadingtext" class="zpelement zpelem-imageheadingtext "><style> @media (min-width: 992px) { [data-element-id="elm_e3HEFndZRDUhMwa6Tc1YcQ"] .zpimageheadingtext-container figure img { width: 50px !important ; height: 50px !important ; } } @media (max-width: 767px) { [data-element-id="elm_e3HEFndZRDUhMwa6Tc1YcQ"] .zpimageheadingtext-container figure img { width:50px ; height:50px ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimageheadingtext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-left zpimage-mobile-align-left zpimage-size-custom zpimage-tablet-fallback-medium zpimage-mobile-fallback-medium zpimage-text-seperate-line "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/27.png" width="50" height="50" loading="lazy" size="custom" data-lightbox="false"/></picture></span></figure><div class="zpimage-headingtext-container"><h4 class="zpimage-heading zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left" data-editor="true"><span>Classic SharePoint Pages</span><br/>​</h4><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p><span><span>CSP enforcement only applies to modern SharePoint pages. Organisations still running classic team sites or publishing sites were not affected, though the long-term trajectory of classic SharePoint remains what it is.</span></span></p></div>
</div></div></div></div></div><div data-element-id="elm_H0GKtjD1tr9ygt2yiS2PnQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_r9SiVr8xz1BIoDk5rpUHaw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_yOGUyNOtBU-b-qARTuOKkQ" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_yOGUyNOtBU-b-qARTuOKkQ"].zpelem-text { background-color:#ECF0F1; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:0px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:5px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p></p></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span style="color:rgb(166, 206, 57);font-size:12px;"></span></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"><br/></span></div><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"></span></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div>Still running classic SharePoint? CSP is one of many reasons the clock is ticking. Our Support Manager Barend Olivier walks through exactly what's at stake and how to move forward in our on-demand webinar, Migration &amp; Modernization: From Legacy to Modern.</div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span><span></span></span></blockquote><div><span><span><br/></span></span></div></div>
</div><div data-element-id="elm_x0sevVGayWLJKEfb_re6sQ" data-element-type="video" class="zpelement zpelem-video "><style type="text/css"> @media (max-width: 767px) { [data-element-id="elm_x0sevVGayWLJKEfb_re6sQ"].zpelem-video iframe.zpvideo{ width:560px !important; height:315px !important; } } @media all and (min-width: 768px) and (max-width:991px){ [data-element-id="elm_x0sevVGayWLJKEfb_re6sQ"].zpelem-video iframe.zpvideo{ width:560px !important; height:315px !important; } } </style><div class="zpvideo-container zpiframe-align-center zpiframe-mobile-align-center zpiframe-tablet-align-center"><iframe class="zpvideo " width="560" height="315" src="https://www.youtube.com/embed/X3b2vhnFsPI?si=11oPQW0TvV7aJPv5" frameborder="0" allowfullscreen></iframe></div>
</div></div></div></div></div><div data-element-id="elm_wujIyeaIWe3HHGkdkbi7uA" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_Gy79vhUoZVk4Tvk9DoiKDw" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_2lynVZF7SbwzbsK_ets-lQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_8tp7cp-NYNJRiECQ6P7FlA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>The Common Thread in Failures</strong></h3></div>
<div data-element-id="elm_Fhxzjl2tFZYbCytcJt6sbA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p style="margin-bottom:20px;">Looking across the common failure patterns, there's a single theme:&nbsp;<strong>legacy script patterns that nobody had revisited in years</strong>. The solutions that broke were rarely recently built, they were older integrations, older web parts, scripts embedded when SharePoint was configured years ago and then forgotten.</p><p style="margin-bottom:20px;">CSP enforcement didn't create new problems; it surfaced old ones. That's actually the point. The report-only window from late 2025 through 28 February was designed exactly for this: a chance to audit before enforcement hit. Teams that used that window had nothing to worry about on 1 March. Teams that didn't are doing triage now.</p></div><p></p></div>
</div><div data-element-id="elm_SJMHmb6Sfh5sCO4bCl5HUw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong><span>The Fix Is Usually Simpler Than It Sounds</span></strong></h3></div>
<div data-element-id="elm_f2XQpFGAV_2w3sf4yeyngw" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div>One of the more reassuring findings: for most organisations, the actual remediation work is not as complex as it sounds once you know what you're dealing with. The common fixes are:</div><div><br/></div></div><p></p><ul><li>Inline scripts: Extract into a&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);font-family:&quot;Courier New&quot;, monospace;"> .js file </span>, host it somewhere trusted, update the reference. An afternoon of work in most cases.</li><li>Untrusted external sources: Add the domain to Trusted Script Sources in SharePoint Admin Center. A few minutes per source.</li><li>Third-party vendor tools: Contact the vendor. Most major vendors had CSP-compliant updates available before enforcement, it's usually a version upgrade.</li></ul><div><div></div><br/><div>The difficulty isn't the fix itself. It's the discovery: knowing which scripts exist, where they live, and what they load. That's why the Purview audit log is so valuable, run a search for &quot;Violated Content Security Policy&quot; to get the full map.</div></div></div>
</div><div data-element-id="elm_OL9VoIPz5uQOqdghTodhTw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong><span><span>What This Tells Us About Security Governance</span></span></strong></h3></div>
<div data-element-id="elm_5nmpUES4L_exdqK82aUJ7A" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_5nmpUES4L_exdqK82aUJ7A"] .zpimagetext-container figure img { width: 407px !important ; height: 271px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/laptop-with-antivirus-shield-hologram-web-safety-2026-03-26-05-09-23-utc.jpg" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p></p><div><p style="margin-bottom:20px;">CSP enforcement is a useful lens on a broader question: how well do organisations actually know what JavaScript is running in their SharePoint environment? For many, the honest answer before 1 March was &quot;not very well.&quot; Scripts accumulate over years of SharePoint growth, solutions built by people who've left, integrations set up for projects long since finished, vendor tools added during evaluations that never quite got removed.</p><p style="margin-bottom:20px;">CSP enforcement forced an audit that should have been happening on an ongoing basis. The silver lining: teams that went through the remediation process now have a much cleaner, better-documented picture of their SharePoint script landscape than they did before.</p></div><p></p></div>
</div></div><div data-element-id="elm_7jeMlHaduwfau0u19N-Hcg" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_7jeMlHaduwfau0u19N-Hcg"].zpelem-text { background-color:#ECF0F1; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:0px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:5px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p></p></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span style="color:rgb(166, 206, 57);font-size:12px;"></span></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"><br/></span></div><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"></span></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><span style="margin-bottom:8px;font-weight:600;color:rgb(166, 206, 57);">If You're Still Cleaning Up</span></div></blockquote><div><div><br/></div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span><span></span></span></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span><span>Check your Purview audit log, work through violations methodically, and use&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);font-family:&quot;Courier New&quot;, monospace;">&nbsp;</span></span><code style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);font-family:&quot;Courier New&quot;, monospace;">?csp=enforce</code><span><span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);font-family:&quot;Courier New&quot;, monospace;">&nbsp;</span> on individual pages to verify fixes. If you're on the 90-day delay, enforcement hits&nbsp;</span><a href="https://www.claudeusercontent.com/?domain=claude.ai&amp;parentOrigin=https%3A%2F%2Fclaude.ai&amp;errorReportingMode=parent&amp;formattedSpreadsheets=true#">1 June 2026</a><span>. Use the time you have.</span></span></blockquote><div><span><span><br/></span></span></div></div>
</div><div data-element-id="elm_Vkih9OF3of4bUesSpw_vow" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_Vkih9OF3of4bUesSpw_vow"].zpelem-text { background-color:#ECF0F1; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:0px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:5px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p></p></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span style="color:rgb(166, 206, 57);font-size:12px;"></span></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><blockquote style="margin-left:40px;border:none;"><p></p></blockquote><blockquote style="margin-left:40px;border:none;"><span style="color:rgb(166, 206, 57);font-size:12px;"></span></blockquote><blockquote style="margin-left:40px;border:none;"><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"><br/></span></div><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"></span></div></blockquote><blockquote style="margin-left:40px;border:none;"><div><span style="margin-bottom:6px;font-weight:700;color:rgb(0, 27, 76);">Further Reading</span></div></blockquote><div><br/></div><blockquote style="margin-left:40px;border:none;"></blockquote><blockquote style="margin-left:40px;border:none;"><a href="https://www.gtconsult.com/blogs/post/sharepoint-csp-enforcement-is-live-%E2%80%94-here-s-what-to-do-if-your-scripts-are-broken" title="SharePoint CSP Enforcement Is Live — Here's What to Do If Your Scripts Are Broken" target="_blank" rel="">SharePoint CSP Enforcement Is Live — Here's What to Do If Your Scripts Are Broken</a></blockquote><blockquote style="margin-left:40px;border:none;"><a href="https://www.gtconsult.com/blogs/post/still-on-the-90-day-csp-delay-your-1-june-deadline-is-coming" title="Still on the 90-Day CSP Delay? Your 1 June Deadline Is Coming" target="_blank" rel="">Still on the 90-Day CSP Delay? Your 1 June Deadline Is Coming</a><a href="https://www.gtconsult.com/blogs/post/still-on-the-90-day-csp-delay-your-1-june-deadline-is-coming" title="Still on the 90-Day CSP Delay? Your 1 June Deadline Is Coming" target="_blank" rel=""><br/></a></blockquote><blockquote style="margin-left:40px;border:none;"><a href="https://learn.microsoft.com/en-us/sharepoint/dev/spfx/content-securty-policy-trusted-script-sources">Support for CSP in SharePoint Online, Microsoft Learn<br/></a><a href="https://techcommunity.microsoft.com/blog/spblog/sharepoint-online-content-security-policy-csp-enforcement-dates-and-guidance/4472662">SharePoint Online CSP: Enforcement Dates and Guidance, Microsoft Tech Community</a></blockquote><blockquote style="margin-left:40px;border:none;"><br/></blockquote><div><br/></div></div></blockquote></div>
</div></div></div></div></div><div data-element-id="elm_6hHgYCt7GskgrPKfG8eEeg" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_5o9tyqS5DYa8Rs-lzUeMvg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_bMqOVNOWc8vB8_07M3LnoQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_FgEBQeenEgCcCZdqqZW0nw" data-element-type="box" class="zpelem-box zpelement zpbox-container zpdark-section zpdark-section-bg "><style type="text/css"> [data-element-id="elm_FgEBQeenEgCcCZdqqZW0nw"].zpelem-box{ background-color:#001B4C; background-image:unset; } </style><div data-element-id="elm_J3T9wRE7uIRA18o-Xl8dEg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-center zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Need our help?</strong><br/></h3></div>
<div data-element-id="elm_Wul5Nibzk63HvmqhW9GsWA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div style="text-align:center;margin-bottom:8px;"><div><p style="margin-bottom:28px;font-style:italic;"><span style="font-size:16px;">Chat to us and let's help you navigate this change.</span></p><span style="font-weight:700;"><a href="https://www.gtconsult.com/contact"></a></span></div></div><p></p></div>
</div><div data-element-id="elm_crCLYMwiUWYuNcQcqs795Q" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_crCLYMwiUWYuNcQcqs795Q"].zpelem-button{ margin-block-start:-5px; } </style><div class="zpbutton-container zpbutton-align-center zpbutton-align-mobile-center zpbutton-align-tablet-center"><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner " href="https://outlook.office.com/bookwithme/user/6bd34779624c4a8ab5f3906f5e71baf7%40gtconsult.com/meetingtype/Cfseq1rTWEyZRk62iTNVAw2?anonymous&amp;ismsaljsauthenabled=true"><span class="zpbutton-content">Book a Free Consultation with Our Technical Account Manager, Trevin</span></a></div>
</div><div data-element-id="elm_jOXcQOq4phuaRlzAOuEquA" data-element-type="spacer" class="zpelement zpelem-spacer "><style> div[data-element-id="elm_jOXcQOq4phuaRlzAOuEquA"] div.zpspacer { height:30px; } @media (max-width: 768px) { div[data-element-id="elm_jOXcQOq4phuaRlzAOuEquA"] div.zpspacer { height:calc(30px / 3); } } </style><div class="zpspacer " data-height="30"></div>
</div></div></div></div></div></div></div> ]]></content:encoded><pubDate>Tue, 31 Mar 2026 14:28:53 +0000</pubDate></item><item><title><![CDATA[Still on the 90-Day CSP Delay? Your 1 June Deadline Is Coming]]></title><link>https://www.gtconsult.com/blogs/post/still-on-the-90-day-csp-delay-your-1-june-deadline-is-coming</link><description><![CDATA[<img align="left" hspace="5" src="https://www.gtconsult.com/Blog Site/HH.png"/>Still on the 90-day CSP delay? Your SharePoint Online enforcement deadline is 1 June 2026. Here's your 8-week action plan to audit violations, fix scripts, and test before the window closes.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_eP5YOwKNSrqbahK8CEdiQA" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_BzFHOmS6RROIhaqlaWh3nA" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_nISarZm9R1Ckzb_WbfTitg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_Ub5ABqLdR9-FylpHZrx5vQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-center zptext-align-tablet-center " data-editor="true"><p><span><span style="font-style:italic;">If your organisation opted into Microsoft's enforcement delay back in February, the window is closing. Here's everything you need to do before 1 June, and why the time to start is now, not May</span></span></p></div>
</div><div data-element-id="elm_dBxUcpgTjzwyeUr3DX8OBQ" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_dBxUcpgTjzwyeUr3DX8OBQ"] .zpimage-container figure img { width: 770px !important ; height: 433px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/HH.png" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div></div></div></div></div><div data-element-id="elm_WSrxBzjT5CfsxXqmDLge2g" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_Y3FtJkZ_Fv454pKS6SQW6g" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_vUw-S8Upiti5CapZN-fOmw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_TsSD7nEU3KBRCKf09eNBXA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p style="margin-bottom:20px;">When Microsoft announced SharePoint Online's Content Security Policy enforcement in early 2026, they included a lifeline for organisations that needed more time: a&nbsp;<code>Set-SPOTenant -DelayContentSecurityPolicyEnforcement $true</code>&nbsp;flag that pushed enforcement from 1 March to&nbsp;<span style="font-weight:600;">1 June 2026</span>. If your IT team enabled that flag, you bought yourself 90 days.</p><p style="margin-bottom:20px;">Those 90 days are now running out.</p><p style="margin-bottom:20px;">The purpose of the delay was to give organisations time to audit their environments, fix non-compliant scripts, and test changes, not to skip preparation entirely. If you haven't started yet, this post is your starting gun.</p></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_fHwr4ShVkzQ1UONfXB6fTA" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_rd-85g3wcjEDxqohf_55ow" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_ujtcD5FTjFye2mnVMw0dKQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_OVixK-nTcjZKFq0mEmfDvQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>What Happens on 1 June</strong></h3></div>
<div data-element-id="elm_l_1rUXou8GqCdFk2Id9rag" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_l_1rUXou8GqCdFk2Id9rag"] .zpimagetext-container figure img { width: 511px !important ; height: 341px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/wooden-block-calendar-with-date-may-1-on-the-yello-2026-03-24-06-29-57-utc.jpg" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p></p><div><div>On 1 June 2026, the enforcement delay expires automatically. There is no second delay option. After that date, CSP enforcement behaves exactly as it does for everyone else who went live 1 March:</div></div><p></p><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><ul><li>Inline JavaScript will be blocked on all modern SharePoint Online pages.</li><li>Scripts loaded from external sources not registered in your Trusted Script Sources list will be blocked.</li><li>Users will see broken web parts, missing functionality, and JavaScript errors with no visual warning that CSP is the cause.</li></ul></blockquote></blockquote><div><div><br/></div><div>The failure mode is silent from a user perspective: a web part just stops working. The only indication is in the browser console, which most end users will never open. That's why preparation before 1 June matters: there's no grace period, no warning message, and no automatic recovery.</div></div></div>
</div></div><div data-element-id="elm_vVTjvaYNjjqsl5c6BcpR7A" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Check Whether You're on the Delay</strong></h3></div>
<div data-element-id="elm_mAd6ToZty12QUOPb4HmZ-w" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>If you're not certain whether your tenant enabled the delay, check it now via PowerShell:</span></span></p></div>
</div><div data-element-id="elm_ptso2aVAuT7leULuUlCsAQ" data-element-type="box" class="zpelem-box zpelement zpbox-container zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_ptso2aVAuT7leULuUlCsAQ"].zpelem-box{ margin-block-start:-2px; } </style><div data-element-id="elm_ABsc7FG80a-u9zKgcIbeww" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_ABsc7FG80a-u9zKgcIbeww"].zpelem-text { background-color:#001B4C; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:0px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:5px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p></p><div><pre style="margin-bottom:28px;"><br/><span style="color:rgb(166, 206, 57);">Get-SPOTenant | Select-Object DelayContentSecurityPolicyEnforcement</span></pre></div><p></p></blockquote></div>
</div><div data-element-id="elm_ai5wS71Rr-Uk1ajQ9Vao8Q" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>If the value returns&nbsp;</span><code>True</code><span>, enforcement is delayed until 1 June. If it returns&nbsp;</span><code>False</code><span>, enforcement was already live on 1 March. Check whether anything broke in your environment around that date.</span></span></p></div>
</div></div></div></div></div></div><div data-element-id="elm_Nenw7td7E8Vcp0PxI95Gsw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_HQa_EGP5Krt1Yt4ShdI_cg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_-8aKbiND671QXMe0HXcrHA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_WAWdnhdvchGT3E9a1_1mnA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Your Action Plan: The Next 8 Weeks</strong></h3></div>
</div></div></div></div><div data-element-id="elm_Ga_iE1bhXKzoEZZoJBSWwQ" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_7rAiNcPZj5hm5LhADvofqg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_xwE1mnwpbKDgLfgMRo9tXQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_9CpVZvT0zpcskTlmd9JK3w" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_9CpVZvT0zpcskTlmd9JK3w"] .zpimage-container figure img { width: 540px ; height: 303.75px ; } } @media (max-width: 767px) { [data-element-id="elm_9CpVZvT0zpcskTlmd9JK3w"] .zpimage-container figure img { width:415px ; height:277.36px ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/wEEK%20-2-.png" width="415" height="277.36" loading="lazy" size="fit"/></picture></span></figure></div>
</div><div data-element-id="elm_CRVLL7qBZG0TooyXt6x6cA" data-element-type="box" class="zpelem-box zpelement zpbox-container zspadding-space-allside-thin zplight-section zplight-section-bg "><style type="text/css"></style><div data-element-id="elm_JExDJGFXV4mDlMT1Rarrow" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h4
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Week 1–2: Audit</strong><br/></h4></div>
<div data-element-id="elm_UUIBIka0XaVrHqODZmYf3g" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p style="margin-bottom:20px;">Before you can fix anything, you need to know what's broken. Two tools:</p><ul><li style="margin-bottom:8px;"><span style="font-weight:600;">Microsoft Purview:</span>&nbsp;Search the audit log for&nbsp;<span style="font-weight:600;">&quot;Violated Content Security Policy&quot;</span>. This returns a tenant-wide list of every page and script source that triggered a CSP violation during the report-only window. This is your master list.</li><li style="margin-bottom:8px;"><span style="font-weight:600;">Browser console +&nbsp;<code>?csp=enforce</code>:</span>&nbsp;Append&nbsp;<code>?csp=enforce</code>&nbsp;to any modern page URL to force enforcement mode. Open Developer Tools (F12) and check the Console tab for blocked script errors. Use this to verify specific pages.</li></ul></div><p></p></div>
</div><div data-element-id="elm_m-U_DY5d4GsZVr4IipHvNQ" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_m-U_DY5d4GsZVr4IipHvNQ"].zpelem-text { background-color:#ECF0F1; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:0px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:5px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p></p></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span style="color:rgb(166, 206, 57);font-size:12px;"></span></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"><br/></span></div><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);">Don't Skip the Audit</span></div></blockquote><div><div></div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span><span>The most common mistake teams make is fixing the scripts they know about and missing the ones they don't. The Purview audit log is the only way to surface violations across your entire tenant, including pages and solutions built by people who may no longer be on the team.</span></span></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p></p></blockquote><div><span><span><br/></span></span></div></div>
</div></div></div><div data-element-id="elm_nvIe16gcvvdn4vklKVVPyA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_vw0JMV39bKdHMNf9RTNh7A" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_vw0JMV39bKdHMNf9RTNh7A"] .zpimage-container figure img { width: 540px ; height: 303.75px ; } } @media (max-width: 767px) { [data-element-id="elm_vw0JMV39bKdHMNf9RTNh7A"] .zpimage-container figure img { width:415px ; height:276.67px ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/wEEK%20-3-.png" width="415" height="276.67" loading="lazy" size="fit"/></picture></span></figure></div>
</div><div data-element-id="elm_o89jONOBSpPXYdro9h68fQ" data-element-type="box" class="zpelem-box zpelement zpbox-container zspadding-space-allside-thin zplight-section zplight-section-bg "><style type="text/css"></style><div data-element-id="elm_H0w7H_Wmc-xHEQoQKW8BxQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h4
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Week 3–5: Fix and Register</strong><br/></h4></div>
<div data-element-id="elm_tEqIHP1EyYN0f89vzKu96g" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p style="margin-bottom:20px;">Work through violations by type:</p><ul><li style="margin-bottom:8px;"><span style="font-weight:600;">Inline scripts:</span>&nbsp;Extract JavaScript into external&nbsp;<code>.js</code>&nbsp;files, host in a trusted location, update references. Register the hosting URL as a Trusted Script Source.</li><li style="margin-bottom:8px;"><span style="font-weight:600;">Dynamic external loads (<code>SPComponentLoader</code>):</span>&nbsp;Register each external URL manually in SharePoint Admin Center under Trusted Script Sources. The 300-entry limit applies across your entire tenant, audit before adding everything.</li><li style="margin-bottom:8px;"><span style="font-weight:600;">Third-party tools:</span>&nbsp;Contact vendors. Most major vendors have CSP-compliant versions of their SharePoint integrations available. This is a version upgrade, not a rebuild.</li></ul><div><br/></div></div><div><br/></div><div><br/></div><div><br/></div><div><br/></div><div><br/></div><p></p></div>
</div></div></div></div><div data-element-id="elm__SrALul_SN6XxXXX9tpaSA" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_aMcZQjKYkpTJuZKQsJQhdA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_LK3DL-8pP0f-QWTwwF6YXg" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_LK3DL-8pP0f-QWTwwF6YXg"] .zpimage-container figure img { width: 540px ; height: 303.75px ; } } @media (max-width: 767px) { [data-element-id="elm_LK3DL-8pP0f-QWTwwF6YXg"] .zpimage-container figure img { width:415px ; height:277.01px ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/wEEK%20-4-.png" width="415" height="277.01" loading="lazy" size="fit"/></picture></span></figure></div>
</div><div data-element-id="elm_aKTAxtAEhpxDn2YIn2LS8w" data-element-type="box" class="zpelem-box zpelement zpbox-container zspadding-space-allside-thin zplight-section zplight-section-bg "><style type="text/css"></style><div data-element-id="elm_MHpk3z_P0pkO7dZzLX2g7A" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h4
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Week 6–7: Test in Enforce Mode</strong><br/></h4></div>
<div data-element-id="elm_BHd6_CX5Z4yAdsrVxeDNgg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>Once fixes are in place, use&nbsp;</span><code>?csp=enforce</code><span>&nbsp;systematically across your critical pages to verify nothing is still breaking. Involve your end users or QA team, have them walk through their normal workflows on the pages they use most.</span></span></p><p><span><span><br/></span></span></p></div>
</div></div></div><div data-element-id="elm_oCKg2oL9zsxt1GsFB8C7oQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_oJIvZG5PmjREB-dLVrVtLA" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_oJIvZG5PmjREB-dLVrVtLA"] .zpimage-container figure img { width: 540px ; height: 303.75px ; } } @media (max-width: 767px) { [data-element-id="elm_oJIvZG5PmjREB-dLVrVtLA"] .zpimage-container figure img { width:415px ; height:277.01px ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit "><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/wEEK%20-1-.png" width="415" height="277.01" loading="lazy" size="fit"/></picture></span></figure></div>
</div><div data-element-id="elm_sGQrlkEllU0E84gm-b400w" data-element-type="box" class="zpelem-box zpelement zpbox-container zspadding-space-allside-thin zplight-section zplight-section-bg "><style type="text/css"></style><div data-element-id="elm_a0Mn5P6CGZ5ZFVFz7QyeqQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h4
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Week 8: Sign Off and Communicate</strong><br/></h4></div>
<div data-element-id="elm_FHAGcoWYx05RrdKlZwa_8A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>Before 1 June, communicate the change to relevant stakeholders. If any web part behaviour has changed as a result of refactoring (however minor), users should know what to expect. Frame it as a security improvement, because it is.</span></span></p></div>
</div></div></div></div></div></div><div data-element-id="elm_eSMUyenMKXyRu81FMBkDEQ" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_TxXzevtdHCmJVnNT-UZf2g" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_FLgNMnG6wZz9R8XpnEEr8w" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_5YSBZW8ob9dmYkadUBvwYg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>The Risk of Waiting Until Late May</strong><br/></h3></div>
<div data-element-id="elm_QeWENosaztTQXcxdYg7Qfg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p style="margin-bottom:20px;">The pattern we've seen with 1 March enforcement is that the teams who struggled were the ones who started late. Trusted Script Source changes can take up to&nbsp;<span style="font-weight:600;">24 hours to propagate</span>&nbsp;across a tenant. If you're making changes on 30 May and something doesn't propagate in time, you have no margin for error.</p><p style="margin-bottom:20px;">Eight weeks sounds like plenty of time. In practice, the audit usually surfaces more than expected, vendor responses take longer than expected, and internal sign-off processes take time. Start now.</p></div><p></p></div>
</div><div data-element-id="elm_AVPOoxqcsMhuu8NExJ0hxQ" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_AVPOoxqcsMhuu8NExJ0hxQ"].zpelem-text { background-color:#ECF0F1; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:0px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:5px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p></p></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span style="color:rgb(166, 206, 57);font-size:12px;"></span></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"><br/></span></div><div><span style="margin-bottom:6px;font-weight:700;color:rgb(166, 206, 57);"></span></div></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><span style="margin-bottom:6px;font-weight:700;color:rgb(0, 27, 76);">Further Reading</span></div></blockquote><div><div><br/></div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span><span></span></span></blockquote><blockquote style="margin-left:40px;border:none;"><a href="https://www.gtconsult.com/blogs/post/sharepoint-csp-enforcement-is-live-%E2%80%94-here-s-what-to-do-if-your-scripts-are-broken" title="SharePoint CSP Enforcement Is Live — Here's What to Do If Your Scripts Are Broken" target="_blank" rel="">SharePoint CSP Enforcement Is Live — Here's What to Do If Your Scripts Are Broken</a></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span><a href="https://learn.microsoft.com/en-us/sharepoint/dev/spfx/content-securty-policy-trusted-script-sources">Support for CSP in SharePoint Online, Microsoft Learn<br/></a></span><span><a href="https://techcommunity.microsoft.com/blog/spblog/sharepoint-online-content-security-policy-csp-enforcement-dates-and-guidance/4472662">SharePoint Online CSP: Enforcement Dates and Guidance, Microsoft Tech Community</a></span></blockquote><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><br/></blockquote><div><span><span><br/></span></span></div></div>
</div></div></div></div></div><div data-element-id="elm_3ZbIXMp_bplALZzuFc1h1g" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_Od3bzyBWoLtQccRrRMlQ3w" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_nh_UJO7sxasukwhsaPYSXQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_p_4CH1Hr4oUZ3mpXl5AC2w" data-element-type="box" class="zpelem-box zpelement zpbox-container zpdark-section zpdark-section-bg "><style type="text/css"> [data-element-id="elm_p_4CH1Hr4oUZ3mpXl5AC2w"].zpelem-box{ background-color:#001B4C; background-image:unset; } </style><div data-element-id="elm_75-2iHH7WrHRnwZ5HIRglg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-center zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Not sure where to start with CSP?</strong><br/></h3></div>
<div data-element-id="elm_rH2SMxg2QFsrgy3H52qg9A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div style="text-align:center;margin-bottom:8px;"><div><p style="margin-bottom:28px;font-style:italic;"><span style="font-size:16px;">Chat to us and let's help you navigate this change.</span></p><span style="font-weight:700;"><a href="https://www.gtconsult.com/contact"></a></span></div></div><p></p></div>
</div><div data-element-id="elm_8uXoyqeqm52XT5S4ty3lVg" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_8uXoyqeqm52XT5S4ty3lVg"].zpelem-button{ margin-block-start:-5px; } </style><div class="zpbutton-container zpbutton-align-center zpbutton-align-mobile-center zpbutton-align-tablet-center"><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner " href="https://outlook.office.com/bookwithme/user/6bd34779624c4a8ab5f3906f5e71baf7%40gtconsult.com/meetingtype/Cfseq1rTWEyZRk62iTNVAw2?anonymous&amp;ismsaljsauthenabled=true"><span class="zpbutton-content">Book a Free Consultation with Our Technical Account Manager, Trevin</span></a></div>
</div><div data-element-id="elm_tv732cnkGpC8RoJYpyb1BQ" data-element-type="spacer" class="zpelement zpelem-spacer "><style> div[data-element-id="elm_tv732cnkGpC8RoJYpyb1BQ"] div.zpspacer { height:30px; } @media (max-width: 768px) { div[data-element-id="elm_tv732cnkGpC8RoJYpyb1BQ"] div.zpspacer { height:calc(30px / 3); } } </style><div class="zpspacer " data-height="30"></div>
</div></div></div></div></div></div></div> ]]></content:encoded><pubDate>Tue, 31 Mar 2026 12:11:08 +0000</pubDate></item><item><title><![CDATA[SharePoint CSP Enforcement Is Live — Here's What to Do If Your Scripts Are Broken]]></title><link>https://www.gtconsult.com/blogs/post/sharepoint-csp-enforcement-is-live-—-here-s-what-to-do-if-your-scripts-are-broken</link><description><![CDATA[<img align="left" hspace="5" src="https://www.gtconsult.com/Blog Site/bROKEN sCRIPTS.png"/>SharePoint CSP enforcement broke your scripts? Learn how to diagnose CSP violations, fix inline JavaScript, and register trusted sources in SharePoint Online after the 1 March 2026 deadline.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_JlBbArKeROui0v2FXVIzqw" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm__ySjZpf_Q5m2x5H2t8DhAg" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_iTIyUCKNQo-NNv5r6KbnXQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_F5xiAV7PQhCYxliSTKGY7g" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-center zptext-align-tablet-center " data-editor="true"><p><span><span style="font-style:italic;">Microsoft flipped the switch on March 1. If your web parts or custom solutions are suddenly misbehaving, Content Security Policy enforcement is likely the culprit. Here's how to diagnose and fix it.</span></span></p></div>
</div><div data-element-id="elm_y84eyVjKieyYxHSZE9h2PA" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_y84eyVjKieyYxHSZE9h2PA"] .zpimage-container figure img { width: 862px !important ; height: 484px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Freak%20Out%20Panic%20GIF.gif" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_0rvVra6YVcKDivZhYjlamg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p style="margin-bottom:20px;">On 1 March 2026, Microsoft moved SharePoint Online's Content Security Policy (CSP) from report-only mode into full enforcement. That means non-compliant scripts are no longer just being logged, they're being&nbsp;<span style="font-weight:600;">blocked</span>. If something in your environment stopped working around that date, there's a good chance CSP is the reason.</p><p style="margin-bottom:20px;">This post walks you through how to confirm CSP is the issue, understand what's being blocked and why, and fix it, without breaking anything else in the process.</p></div><p></p></div>
</div><div data-element-id="elm_hfrLBq5gAsxnSPWo9PJYUw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Step 1: Confirm CSP Is the Culprit</strong></h3></div>
<div data-element-id="elm_1CtLYqPP1JHlVvtqxqQY3g" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>Before diving into fixes, verify that CSP enforcement is actually what's blocking your scripts. The fastest way is through the browser console.</span></span></p></div>
</div><div data-element-id="elm_w_MBbIMF6PltojDnl-7ngQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div></div><p></p><ol><li>Open the affected SharePoint page in your browser.</li><li>Press&nbsp;<span style="font-family:&quot;Courier New&quot;, monospace;background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);"> F12&nbsp;</span> to open Developer Tools and navigate to the Console tab.</li><li>Look for errors beginning with&nbsp;&nbsp;<span style="font-family:&quot;Courier New&quot;, monospace;background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">Refused to execute script </span>&nbsp;or containing&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);"><span style="font-family:&quot;Courier New&quot;, monospace;">Content-Security-Policy&nbsp;</span></span>.</li><li>Alternatively, append&nbsp;<span style="font-family:&quot;Courier New&quot;, monospace;background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);"> ?csp=enforce </span>&nbsp;to the page URL to trigger enforcement mode explicitly and surface violations immediately.</li></ol></div>
</div><div data-element-id="elm_YGWgrTGmL6dhtuSfMdrI3Q" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>If you're seeing CSP violation errors, you're in the right place. If not, the issue may be something else. Check network errors or JavaScript exceptions separately.</span></span></p></div>
</div></div></div></div></div><div data-element-id="elm__GHuxlVbA11FzHnzghrshg" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_fKXU-l1bWvSlNefZg5cEcg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_KAy_qLw4wb0PbMWUTTIWVw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_ekM2Bw3eIr0FUiKtH2gWvA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Step 2: Identify What's Being Blocked</strong></h3></div>
<div data-element-id="elm_6GI90XA0XyMCPbAwRPO26g" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>CSP violations in SharePoint Online generally fall into two categories:&nbsp;</span><span style="font-weight:600;">inline scripts</span><span>&nbsp;and&nbsp;</span><span style="font-weight:600;">untrusted external sources</span><span>.</span></span></p></div>
</div><div data-element-id="elm_dACnocdr5by5gpVhmC2p0w" data-element-type="imageheadingtext" class="zpelement zpelem-imageheadingtext "><style> @media (min-width: 992px) { [data-element-id="elm_dACnocdr5by5gpVhmC2p0w"] .zpimageheadingtext-container figure img { width: 313px !important ; height: 313px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimageheadingtext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Looking%20Where%20Are%20You%20GIF%20by%20Pudgy%20Penguins.gif" data-src="/Blog%20Site/Looking%20Where%20Are%20You%20GIF%20by%20Pudgy%20Penguins.gif" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-headingtext-container"><h3 class="zpimage-heading zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left" data-editor="true"><span>Inline Scripts<br/></span></h3><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p><span><span>Any JavaScript written directly into a page, web part, or solution using&nbsp;<span style="font-family:&quot;Courier New&quot;, monospace;background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span></span><code><span style="font-family:&quot;Courier New&quot;, monospace;background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">innerHTML&nbsp;</span>&nbsp;</code><span>,&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span></span><code><span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);"><span style="font-family:&quot;Courier New&quot;, monospace;">document.write()</span>&nbsp;</span>&nbsp;</code><span>, or script tags without a proper source reference will be blocked. Microsoft has confirmed that&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span></span><code style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">unsafe-inline&nbsp;</code><span>&nbsp;is not permitted and that nonce values will not be exposed, so there is no workaround here. These scripts must be refactored.</span></span></p><p><span><span><br/></span></span></p><p><span><span></span></span></p><div><h3></h3></div><div><h3 style="margin-bottom:10px;">Untrusted External Sources</h3><div><span><span>Scripts loaded from external URLs (CDNs, third-party services, custom hosted libraries) that haven't been added to your SharePoint tenant's Trusted Script Sources list will also be blocked. Note that standard SPFx bundles deployed via&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span></span><code style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">cdnBasePath</code><span><span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span> or declared in&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span></span><code style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">externals</code><span><span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span> in your config are auto-trusted, it's dynamic loading via&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span></span><code style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">SPComponentLoader.loadScript()&nbsp;</code><span>&nbsp;or ad-hoc external references that need manual registration.</span></span><br/></div></div><br/><p></p></div>
</div></div></div><div data-element-id="elm_mOWsCtUcNteYCYALP4q7Ug" data-element-type="box" class="zpelem-box zpelement zpbox-container zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_mOWsCtUcNteYCYALP4q7Ug"].zpelem-box{ background-color:#ECF0F1; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:0px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:5px; } </style><div data-element-id="elm_DhcfJmdwiJuT4EhTQjRgxw" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p><span><span style="margin-bottom:6px;font-weight:600;">TENANT-WIDE AUDIT</span></span></p></blockquote></div>
</div><div data-element-id="elm_rnmNIJtk6eMEAoVd_rC16Q" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p><span><span>Go to Microsoft Purview and search for&nbsp;</span><span style="margin-bottom:6px;font-weight:600;">&quot;<span style="color:rgb(166, 206, 57);">Violated Content Security Policy</span>&quot;&nbsp;</span><span>in the audit log. This gives you a full picture of which pages and scripts have triggered violations across your entire tenant, not just the one page you're looking at.</span></span></p><p><span><span><br/></span></span></p></blockquote></div>
</div></div></div></div></div></div><div data-element-id="elm_KEv-U4Ca6DQzMQczVw-bzA" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_1rV5-ALCygGG8HRBGFd3mw" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_c6xc0TVoOPR00Qlu21Q8dw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_A3BGzOhe70IyTdddyuW5RQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Step 3: Fix Inline Scripts</strong></h3></div>
<div data-element-id="elm_meag7RQcmyEJuBLU1WRWSg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>Inline scripts need to be moved into external&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span></span><code style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">.js&nbsp;</code><span>&nbsp;files and hosted in a trusted location. The typical path for SPFx solutions:</span></span></p></div>
</div><div data-element-id="elm_RCDcvwmmiQ0sFP2mC49-eA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div></div><p></p><ol><li>Extract the inline JavaScript into a standalone&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);"> .js&nbsp;</span> file.</li><li>Deploy the file to a trusted location (e.g., SharePoint document library, Azure Blob Storage, your CDN).</li><li>Reference it as an external module within your SPFx solution rather than injecting it inline.</li><li>Register the script source as a Trusted Script Source (see Step 4).</li></ol></div>
</div><div data-element-id="elm_6m7EQfNHcwtUzTMpmkqK5A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>For scripts embedded directly in classic-style page layouts or content editor web parts, the same logic applies, extract, host externally, reference externally.</span></span></p></div>
</div><div data-element-id="elm_dQYvqRaWOUiT6kZc49itQg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong><span>Step 4: Register Trusted Script Sources</span></strong></h3></div>
<div data-element-id="elm_dHKHl9I8fLTOXl8bjDybKA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>For any external URL your solutions load scripts from, you need to add that domain to SharePoint's Trusted Script Sources list. This is done in the SharePoint Admin Center.</span></span></p></div>
</div><div data-element-id="elm_l93duRYcaUVRZCjfjHk_og" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_l93duRYcaUVRZCjfjHk_og"] .zpimagetext-container figure img { width: 23px !important ; height: 23px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Copy%20of%20Copy%20of%20Secure%20score%20carousel%20-2-.png" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p></p><div><p>Go to&nbsp;<span style="font-weight:600;">SharePoint Admin Center → Advanced → Trusted Script Sources</span>&nbsp;(or use PowerShell).</p></div><p></p></div>
</div></div><div data-element-id="elm_49oMtvAnwwXxcxf97JUX5g" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_49oMtvAnwwXxcxf97JUX5g"] .zpimagetext-container figure img { width: 23px !important ; height: 23px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Copy%20of%20Copy%20of%20Secure%20score%20carousel%20-3-.png" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p></p><p></p><div><p>Add the full domain or path of the external script source. Wildcards are limited, subdomains must be registered individually.</p></div><p></p><p></p></div>
</div></div><div data-element-id="elm_93me_ksQSOiaFweHBkG0IA" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_93me_ksQSOiaFweHBkG0IA"] .zpimagetext-container figure img { width: 23px !important ; height: 23px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Copy%20of%20Copy%20of%20Secure%20score%20carousel%20-4-.png" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p></p><div><p><span>Note the 300 entry limit across your tenant. Audit carefully before adding everything.</span></p></div><p></p></div>
</div></div><div data-element-id="elm_i69HLMIE0ni_943ZkBfKbA" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_i69HLMIE0ni_943ZkBfKbA"] .zpimagetext-container figure img { width: 23px !important ; height: 23px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Copy%20of%20Copy%20of%20Secure%20score%20carousel%20-5-.png" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p></p><div><p><span>Changes can take up to 24 hours to propagate across your tenant.</span></p></div><p></p></div>
</div></div><div data-element-id="elm_ctoXuMt9AxzU9reosTs0wQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>Via PowerShell:</span></span></p></div>
</div><div data-element-id="elm_5U-4PfFgccroxGbhR6lGzA" data-element-type="box" class="zpelem-box zpelement zpbox-container zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_IBJtMmV_HN0vLFAWoXTxBw" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_IBJtMmV_HN0vLFAWoXTxBw"].zpelem-text { background-color:#001B4C; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:1px; border-inline-end-width:1px; border-block-end-width:1px; border-inline-start-width:6px; } </style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p></p><div><pre style="margin-bottom:28px;"><span style="font-family:&quot;Courier New&quot;, monospace;"><span style="color:rgb(166, 206, 57);"><br/>Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl &quot;https://yourdomain.com/scripts&quot;</span></span></pre></div><p></p></blockquote></div>
</div></div></div></div></div></div><div data-element-id="elm_Yw9Ps3j5jzQnD7q-UgWTbw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_WU3YlmnNnTjKkyJU_dSD4Q" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_3cEfaDqcxWBriC9THUiCuQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_m8IK40gwtTPZskTD4IxrBg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Step 5: Coordinate With Third-Party Vendors</strong></h3></div>
<div data-element-id="elm_757iSwUXx5BmO6eeSeR8vA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p style="margin-bottom:20px;">If your SharePoint environment includes solutions from third-party vendors, analytics tools, chatbots, form builders, or similar, those vendors may need to update their products to be CSP-compliant. Reach out to them with the specific violation URLs from your Purview audit and ask for a compliance timeline.</p><p style="margin-bottom:20px;">In the meantime, you can temporarily register their script sources as trusted, but the long-term fix needs to come from their end if their solutions use inline scripting patterns.</p></div><p></p></div>
</div><div data-element-id="elm_6Ma8PrVKz7twPmSMo-JpZQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong><span>If You're Still on the 90-Day Delay</span></strong></h3></div>
<div data-element-id="elm_d0IEmWOdqxAck3bLuHJhwQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><span>Some tenants enabled the 90-day enforcement delay using&nbsp;<span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">&nbsp;</span></span><code><span style="background-color:rgb(0, 27, 76);color:rgb(166, 206, 57);">Set-SPOTenant -DelayContentSecurityPolicyEnforcement $true&nbsp;</span>&nbsp;</code><span>before 1 March. If that's you, your enforcement date is&nbsp;</span><span style="font-weight:600;">1 June 2026</span><span>, and it will arrive faster than you think. Use this guide now while you still have the buffer.</span></span></p></div>
</div><div data-element-id="elm_Z1i6hqjMX6RByjb63q0h7Q" data-element-type="box" class="zpelem-box zpelement zpbox-container zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_Z1i6hqjMX6RByjb63q0h7Q"].zpelem-box{ background-color:#ECF0F1; background-image:unset; border-style:solid; border-color:#A6CE39 !important; border-block-start-width:0px; border-inline-end-width:0px; border-block-end-width:0px; border-inline-start-width:5px; } </style><div data-element-id="elm_R3C5fVvgQJG5taBIzKKyrQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><p><span><span style="margin-bottom:6px;font-weight:600;">FURTHER READING</span></span></p></blockquote></div>
</div><div data-element-id="elm_nQzEhkS31J4tyfCb_RlvEA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin-left:40px;border:none;"><a href="https://www.gtconsult.com/blogs/post/still-on-the-90-day-csp-delay-your-1-june-deadline-is-coming" title="Still on the 90-Day CSP Delay? Your 1 June Deadline Is Coming" target="_blank" rel="">Still on the 90-Day CSP Delay? Your 1 June Deadline Is Coming</a></blockquote><blockquote style="margin-left:40px;border:none;"><p><a href="https://learn.microsoft.com/en-us/sharepoint/dev/spfx/content-securty-policy-trusted-script-sources">Support for CSP in SharePoint Online, Microsoft Learn</a></p><p><a href="https://techcommunity.microsoft.com/blog/spblog/sharepoint-online-content-security-policy-csp-enforcement-dates-and-guidance/4472662">SharePoint Online CSP: Enforcement Dates and Guidance, Microsoft Tech Community</a></p><p><br/></p></blockquote></blockquote></div>
</div></div></div></div></div></div><div data-element-id="elm_985slfZTR4k2ttRSbSmS5w" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_xzVCl9up0AagLZJdU3YuDA" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_OPiyNqZOORX7qw_D4WaPfg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_xW6xLO2np-KPSjiRwKVaEQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span>Still dealing with broken scripts after CSP enforcement?</span></h3></div>
</div></div></div></div><div data-element-id="elm_m1WjnY7aKkk-kIQT-FIXEg" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_lfVophjrGg8fwbIKQtky6w" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_aeLH76DFxhLwc7cGquF0rg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_-1ybMYiXbQSrXh1qhSgOIQ" data-element-type="box" class="zpelem-box zpelement zpbox-container zpdark-section zpdark-section-bg "><style type="text/css"> [data-element-id="elm_-1ybMYiXbQSrXh1qhSgOIQ"].zpelem-box{ background-color:#001B4C; background-image:unset; } </style><div data-element-id="elm_lR9Tn2hQXp3BPbLtMeeYhg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-center zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Not sure where to start with CSP?</strong><br/></h3></div>
<div data-element-id="elm_i4q2Vzh5RsiZyQhQrjv7XQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div style="text-align:center;margin-bottom:8px;"><div><p style="margin-bottom:28px;font-style:italic;"><span style="font-size:16px;">Chat to us and let's help you navigate this change.</span></p><span style="font-weight:700;"><a href="https://www.gtconsult.com/contact"></a></span></div></div><p></p></div>
</div><div data-element-id="elm__VFsH1zQMu4Icm-_Sw9O1A" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm__VFsH1zQMu4Icm-_Sw9O1A"].zpelem-button{ margin-block-start:-5px; } </style><div class="zpbutton-container zpbutton-align-center zpbutton-align-mobile-center zpbutton-align-tablet-center"><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner " href="https://outlook.office.com/bookwithme/user/6bd34779624c4a8ab5f3906f5e71baf7%40gtconsult.com/meetingtype/Cfseq1rTWEyZRk62iTNVAw2?anonymous&amp;ismsaljsauthenabled=true"><span class="zpbutton-content">Book a Free Consultation with Our Technical Account Manager, Trevin</span></a></div>
</div><div data-element-id="elm_4Y45PwLDQLXa_hn4558z0A" data-element-type="spacer" class="zpelement zpelem-spacer "><style> div[data-element-id="elm_4Y45PwLDQLXa_hn4558z0A"] div.zpspacer { height:30px; } @media (max-width: 768px) { div[data-element-id="elm_4Y45PwLDQLXa_hn4558z0A"] div.zpspacer { height:calc(30px / 3); } } </style><div class="zpspacer " data-height="30"></div>
</div></div></div></div></div></div></div> ]]></content:encoded><pubDate>Mon, 30 Mar 2026 16:25:43 +0000</pubDate></item><item><title><![CDATA[Why Most Teams Aren't Actually Maximising Their Microsoft 365 Licence]]></title><link>https://www.gtconsult.com/blogs/post/why-most-teams-aren-t-actually-maximising-their-microsoft-365-licence</link><description><![CDATA[<img align="left" hspace="5" src="https://www.gtconsult.com/Blog Site/Migration Write Up Thumbnail ww.png"/>Your team has Microsoft 365 — but are they using more than Outlook and Teams? Most organisations pay for the full suite and barely scratch the surface. Here's why the gap between your licence and your team's knowledge is costing you more than you think, and what you can do about it.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_o1jZ9sHUR4WfBl79B6FevA" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_uwb1y2GiSoOLFPPU7eFMDw" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_mxmpLyVqSYuW40XdL1y4tQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_fB56qcf52kGGMnVdkFMGzQ" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_fB56qcf52kGGMnVdkFMGzQ"] .zpimage-container figure img { width: 1110px ; height: 624.38px ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Migration%20Write%20Up%20Thumbnail%20ww.png" size="fit" data-lightbox="true"/></picture></span></figure></div>
</div></div></div></div></div><div data-element-id="elm_Q5SgB_WSfDYAhsBGfZUb4g" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_9gBycrCNYZcRmhxqUH6lGg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_ZDnAGeMarwR2IBnab_oKnw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_7APgAGBaRC6vlimkO1NHEg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-center zptext-align-tablet-center " data-editor="true"><p></p><div><p style="text-align:left;">You're paying for Microsoft 365. Every month. For every user.</p><p style="text-align:left;"><br/></p><p style="text-align:left;">But here's the thing — do you actually know what you're paying for? And more importantly, is your team using even half of it?</p><p style="text-align:left;"><br/></p><p style="text-align:left;">If your honest answer is &quot;I'm not sure,&quot; you're not alone. And that's exactly the problem.</p></div>
<p></p></div></div><div data-element-id="elm_t4rtqXx3hFmVclRYtnqysQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>The licence you're paying for vs. the licence you're using</strong></h3></div>
<div data-element-id="elm_aJuYboLXb4SntfdGEWO7-Q" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p>Let's talk about what's actually happening in most organisations.</p><p><br/></p><p>Your team opens Outlook. They jump into a Teams meeting. Maybe someone opens a Word doc or an Excel spreadsheet. And that's... pretty much it.</p><p>But your Microsoft 365 licence — whether it's Business Standard, E3, or E5 — includes a lot more than email, meetings, and documents. We're talking SharePoint for document management and intranets, OneDrive for personal cloud storage (up to 1TB per user), Power Automate for workflow automation, Microsoft Forms for surveys and data collection, Planner and To Do for task management, Lists for structured data tracking — and depending on your plan, even more.</p><p><br/></p><p>Most of these tools are sitting there, fully licenced, fully available, and completely untouched.</p></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_PzvKegdwMYlLmB1OD5EzjA" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_ct9JywgWgEVf_ZjUVZuNoQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_X-CWgWM7W1EwmHcWnc-IRA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_C3GI7KGHnNAP9UUhsJ6y_Q" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>It's not a technology problem — it's a knowledge problem</strong></h3></div>
<div data-element-id="elm_kO3Q2WYvGo0MyFqxwrCe7A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p>Here's where it gets frustrating. Organisations will pay for a Microsoft 365 E3 licence and then also pay separately for Dropbox, Trello, SurveyMonkey, or Zoom — tools that do what their existing licence already covers.</p><p><br/></p><p>Not because Microsoft 365 can't do it. But because nobody on the team knows it can.</p><p>Think about that for a second. You're essentially paying twice for the same capability — once through your M365 licence and again through a third-party subscription — just because your people haven't been shown what's already available.</p><p><br/></p><p>And it's not their fault. Nobody sat them down and said, &quot;Hey, you know that thing you're using Dropbox for? OneDrive does that. And it's already included in what we're paying for.&quot; Or, &quot;That approval process you're running over email? Power Automate can handle that automatically.&quot;</p></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_Re03yeX9iiXyIhqpQU6STg" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_38Yvvwn-Nq0apOgucXrHcg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_0htmgxLHBFIteDV5ahF6Tg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_NE8j8oQ2s7eGnk8b6jc4bw" data-element-type="imageheadingtext" class="zpelement zpelem-imageheadingtext "><style> @media (min-width: 992px) { [data-element-id="elm_NE8j8oQ2s7eGnk8b6jc4bw"] .zpimageheadingtext-container figure img { width: 460px !important ; height: 347px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimageheadingtext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-original zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Fairly%20Oddparents%20Burn%20GIF.gif" data-src="/Blog%20Site/Fairly%20Oddparents%20Burn%20GIF.gif" size="original" data-lightbox="true"/></picture></span></figure><div class="zpimage-headingtext-container"><h3 class="zpimage-heading zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left" data-editor="true"><strong>The real cost of underutilisation</strong></h3><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p></p><div><p>This isn't just about wasting a few rand or dollars on duplicate subscriptions, although that adds up faster than you'd think.</p><p><br/></p><p>According to industry research, 20–30% of IT budgets are lost to unused SaaS features. That's not a small leak — that's a significant chunk of your technology spend going nowhere.</p><p>But the bigger cost is the one you can't see on a spreadsheet: lost productivity.</p><p>Microsoft's own Work Trend Index found that users spend 60% of their time in Microsoft 365 apps on emails, chats, and meetings — and only 40% on actual creation work in apps like Word, Excel, and PowerPoint. That's according to data from their 2024 annual report, covering trillions of productivity signals across their platform.</p><p><br/></p><p>Now imagine if your team knew how to use SharePoint properly instead of emailing files back and forth. Or if they could set up a simple Power Automate flow to handle that weekly status report nobody enjoys putting together. That 60/40 split starts to shift. People spend less time in communication loops and more time getting actual work done.</p></div><p></p></div>
</div></div></div></div></div></div></div><div data-element-id="elm_8UmmTXw0QoD2v95HjmUDVQ" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_fu-GZaHRIVKdVKlIbvndBQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_YFsMmUH0CBCKUDl3KwGlqQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_myL-UUbroQEYSl7cGQSvPw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>The features hiding in plain sight</strong></h3></div>
<div data-element-id="elm_-UK7p94RTrt-XMQTsx1pgQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p>Let me give you a few examples of what most teams are missing, even on a standard Business Standard or E3 licence:</p></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_LJCv6S_mroNO9abOgsRb5g" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_N6rFSEpnlK7HZBRkxJwxVQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_VcXuPH-zwWFzndepRMAoag" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_bJ1p7EwBsn5KmRdt2nxCeA" data-element-type="iconHeadingText" class="zpelement zpelem-iconheadingtext "><style type="text/css"></style><div class="zpicon-container zpicon-align-left zpicon-align-mobile-left zpicon-align-tablet-left zpicon-clear-align"><style></style><span class="zpicon zpicon-common zpicon-anchor zpicon-size-md zpicon-style-none "><svg viewBox="0 0 512 512" height="512" width="512" aria-label="hidden" xmlns="http://www.w3.org/2000/svg"><path d="M504 255.531c.253 136.64-111.18 248.372-247.82 248.468-59.015.042-113.223-20.53-155.822-54.911-11.077-8.94-11.905-25.541-1.839-35.607l11.267-11.267c8.609-8.609 22.353-9.551 31.891-1.984C173.062 425.135 212.781 440 256 440c101.705 0 184-82.311 184-184 0-101.705-82.311-184-184-184-48.814 0-93.149 18.969-126.068 49.932l50.754 50.754c10.08 10.08 2.941 27.314-11.313 27.314H24c-8.837 0-16-7.163-16-16V38.627c0-14.254 17.234-21.393 27.314-11.314l49.372 49.372C129.209 34.136 189.552 8 256 8c136.81 0 247.747 110.78 248 247.531zm-180.912 78.784l9.823-12.63c8.138-10.463 6.253-25.542-4.21-33.679L288 256.349V152c0-13.255-10.745-24-24-24h-16c-13.255 0-24 10.745-24 24v135.651l65.409 50.874c10.463 8.137 25.541 6.253 33.679-4.21z"></path></svg></span><h3 class="zpicon-heading " data-editor="true"><span style="font-size:20px;">Version history in SharePoint and OneDrive.</span></h3><div class="zpicon-text-container " data-editor="true"><p><span>Your team is probably still saving files as &quot;Report_v2_FINAL_actuallyFINAL.docx.&quot; Meanwhile, SharePoint and OneDrive automatically track every version of every document. You can roll back changes, see who edited what, and recover deleted files — all built in, no extra cost.</span></p></div>
</div></div></div><div data-element-id="elm_WUulrhFRrgPsGFv4f4KCKg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_hCNsGrEcms-2cSiZrK3UpQ" data-element-type="iconHeadingText" class="zpelement zpelem-iconheadingtext "><style type="text/css"></style><div class="zpicon-container zpicon-align-left zpicon-align-mobile-left zpicon-align-tablet-left zpicon-clear-align"><style></style><span class="zpicon zpicon-common zpicon-anchor zpicon-size-md zpicon-style-none "><svg viewBox="0 0 576 512" height="576" width="512" aria-label="hidden" xmlns="http://www.w3.org/2000/svg"><path d="M527.9 224H480v-48c0-26.5-21.5-48-48-48H272l-64-64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h400c16.5 0 31.9-8.5 40.7-22.6l79.9-128c20-31.9-3-73.4-40.7-73.4zM48 118c0-3.3 2.7-6 6-6h134.1l64 64H426c3.3 0 6 2.7 6 6v42H152c-16.8 0-32.4 8.8-41.1 23.2L48 351.4zm400 282H72l77.2-128H528z"></path></svg></span><h3 class="zpicon-heading " data-editor="true"><span style="font-size:20px;"><span>Shared libraries in SharePoint.</span></span><br/><span style="font-size:20px;">​</span></h3><div class="zpicon-text-container " data-editor="true"><p><span>Instead of dumping everything in a shared drive or emailing attachments, your team could be working from a single source of truth with proper permissions, metadata, and search. But most teams never get past using SharePoint as a glorified file dump.</span></p></div>
</div></div></div><div data-element-id="elm_xsksA6dYMz-KEGQ10zzbRQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_0fFNJSQWUwwxfAB5GWx_Yg" data-element-type="iconHeadingText" class="zpelement zpelem-iconheadingtext "><style type="text/css"></style><div class="zpicon-container zpicon-align-left zpicon-align-mobile-left zpicon-align-tablet-left zpicon-clear-align"><style></style><span class="zpicon zpicon-common zpicon-anchor zpicon-size-md zpicon-style-none "><svg viewBox="0 0 512 512" height="512" width="512" aria-label="hidden" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 48c110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200-110.532 0-200-89.451-200-200 0-110.532 89.451-200 200-200m140.204 130.267l-22.536-22.718c-4.667-4.705-12.265-4.736-16.97-.068L215.346 303.697l-59.792-60.277c-4.667-4.705-12.265-4.736-16.97-.069l-22.719 22.536c-4.705 4.667-4.736 12.265-.068 16.971l90.781 91.516c4.667 4.705 12.265 4.736 16.97.068l172.589-171.204c4.704-4.668 4.734-12.266.067-16.971z"></path></svg></span><h3 class="zpicon-heading " data-editor="true"><span style="font-size:20px;"><span>Power Automate for approvals.</span></span><br/><span style="font-size:20px;">​</span></h3><div class="zpicon-text-container " data-editor="true"><p><span>That thing where someone emails a document to their manager, who forwards it to finance, who then emails it back? That entire chain can be automated with a simple approval flow. It's included in your licence. It takes about 15 minutes to set up. But if nobody knows it exists, nobody uses it.</span></p></div>
</div></div></div></div><div data-element-id="elm_pHekxdCHncMek6-VMHs8Ow" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_e5NJz28SV1Wm2wbs6Wa4YA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_JYXP6vvmyIvdCR9AYRy6Gw" data-element-type="iconHeadingText" class="zpelement zpelem-iconheadingtext "><style type="text/css"></style><div class="zpicon-container zpicon-align-left zpicon-align-mobile-left zpicon-align-tablet-left zpicon-clear-align"><style></style><span class="zpicon zpicon-common zpicon-anchor zpicon-size-md zpicon-style-none "><svg viewBox="0 0 448 512" height="448" width="512" aria-label="hidden" xmlns="http://www.w3.org/2000/svg"><path d="M448 348.106V80c0-26.51-21.49-48-48-48H48C21.49 32 0 53.49 0 80v351.988c0 26.51 21.49 48 48 48h268.118a48 48 0 0 0 33.941-14.059l83.882-83.882A48 48 0 0 0 448 348.106zm-128 80v-76.118h76.118L320 428.106zM400 80v223.988H296c-13.255 0-24 10.745-24 24v104H48V80h352z"></path></svg></span><h3 class="zpicon-heading " data-editor="true"><span style="font-size:20px;"><span>Microsoft Forms for data collection.</span></span></h3><div class="zpicon-text-container " data-editor="true"><p><span>Still sending around Excel spreadsheets for people to fill in and email back? Forms handles this natively and feeds the data straight into Excel or SharePoint — no manual consolidation needed.</span></p></div>
</div></div></div><div data-element-id="elm_ZSe4KOmUUdNn4z7f_WlSLA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_mM2XqdOJP8hpTiwYma4PHA" data-element-type="iconHeadingText" class="zpelement zpelem-iconheadingtext "><style type="text/css"></style><div class="zpicon-container zpicon-align-left zpicon-align-mobile-left zpicon-align-tablet-left zpicon-clear-align"><style></style><span class="zpicon zpicon-common zpicon-anchor zpicon-size-md zpicon-style-none "><svg viewBox="0 0 512 512" height="512" width="512" aria-label="hidden" xmlns="http://www.w3.org/2000/svg"><path d="M440.65 12.57l4 82.77A247.16 247.16 0 0 0 255.83 8C134.73 8 33.91 94.92 12.29 209.82A12 12 0 0 0 24.09 224h49.05a12 12 0 0 0 11.67-9.26 175.91 175.91 0 0 1 317-56.94l-101.46-4.86a12 12 0 0 0-12.57 12v47.41a12 12 0 0 0 12 12H500a12 12 0 0 0 12-12V12a12 12 0 0 0-12-12h-47.37a12 12 0 0 0-11.98 12.57zM255.83 432a175.61 175.61 0 0 1-146-77.8l101.8 4.87a12 12 0 0 0 12.57-12v-47.4a12 12 0 0 0-12-12H12a12 12 0 0 0-12 12V500a12 12 0 0 0 12 12h47.35a12 12 0 0 0 12-12.6l-4.15-82.57A247.17 247.17 0 0 0 255.83 504c121.11 0 221.93-86.92 243.55-201.82a12 12 0 0 0-11.8-14.18h-49.05a12 12 0 0 0-11.67 9.26A175.86 175.86 0 0 1 255.83 432z"></path></svg></span><h3 class="zpicon-heading " data-editor="true"><span style="font-size:20px;"><span>OneDrive sync and Files On-Demand.</span></span></h3><div class="zpicon-text-container " data-editor="true"><p><span>Your team has up to 1TB of personal cloud storage per user. They can sync files across devices and choose which files to keep offline. It's essentially Dropbox, built into Windows, at no extra charge. But I'd bet most of your users either don't have it set up or don't know it's there.</span></p></div>
</div></div></div></div></div></div><div data-element-id="elm_I5u6ImCvOd6fHayYdMlosw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_YkSqkstkmdSrbgtufAlYgQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_1QmkuTGb3KLSvEDo4E2usA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_A5NE0HjAKyqfMhPlVxyWsg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong><span>&quot;But we've done training&quot;</span></strong></h3></div>
<div data-element-id="elm_p5Gq0kLRAsb-tfDoAm1_Aw" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_p5Gq0kLRAsb-tfDoAm1_Aw"] .zpimagetext-container figure img { width: 367px !important ; height: 262px !important ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/facepalm%20GIF%20-1-.gif" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p></p><div><p><span>Maybe you have. A lot of organisations run training when they first roll out Microsoft 365. A half-day session, maybe a full day if they're thorough. Someone walks through the apps, everyone nods, and then they go back to working exactly the way they did before.</span><br/></p><p><span><br/></span></p><p>Here's the problem with once-off training: Microsoft 365 isn't static. Microsoft ships updates and new features constantly — their 2025 roadmap alone lists over 500 planned updates across commercial and education plans. What you trained on two years ago isn't the same platform your team is using today.</p><p><br/></p><p>And let's be honest — how much of a full-day training session does anyone actually retain? If the training isn't practical, scenario-based, and reinforced over time, it fades within a week. People fall back on old habits because those habits are comfortable, even when they're inefficient.</p></div><p></p></div>
</div></div></div></div></div></div><div data-element-id="elm_ONlmuX7D7awZk9LnxSSiHA" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_KRMurNR_E9ZnmSdYM69nXA" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_-pxro0zRFTbj5PDJE0s-kQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_H30DRKgsEvMI4ofarhn9dQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>So what does maximising your licence actually look like?</strong></h3></div>
<div data-element-id="elm_3Bap9b9j5bgjNnI_MjJj8A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p>It's not about becoming a power user overnight. It's about making sure your people understand the basics properly and then building from there.</p><p><br/></p><p>It starts with the fundamentals: knowing where to save files (OneDrive for personal, SharePoint for team), understanding how Teams, SharePoint, and OneDrive work together, and being able to share files with a link instead of an attachment.</p><p><br/></p><p>Then you layer on productivity skills: co-authoring documents in real time, using Planner for project tracking, setting up basic automations, organising SharePoint sites so people can actually find things.</p><p><br/></p><p>And for the people who want to go further — your site owners, your digital champions, your IT-adjacent team members — there's governance, security settings, and advanced automation with Power Automate and eventually Copilot.</p><p><br/></p><p>The point is, it's a journey. Not a single event.</p></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_3b2AXEiBNlcu9F1byNxqEw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_puiMiJyb8p_tGWV4TJZaXg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_EU8KqbNU7xbXVtnIU4bkWA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_ku0Z-YEtIMfEsLjjuoAbkQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>What you can do right now</strong></h3></div>
<div data-element-id="elm_cBuzphtz2_V_VWYyWV3xvA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p>Before you do anything else, run a quick mental audit. Ask yourself:</p><p><br/></p><p>Are we paying for any third-party tools that duplicate what Microsoft 365 already offers? When was the last time our team received structured M365 training? Can our people confidently explain the difference between OneDrive and SharePoint? Does anyone on the team know how to set up a basic Power Automate flow? Are we using SharePoint for document management, or is it just a dumping ground?</p><p><br/></p><p>If most of those answers make you uncomfortable, that's your sign.</p></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_fdyMT3gjJBVSjkkDsFSIlw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_4trbPvZ-L7i3r3azn7mTjg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_5wzou0B10h68_m6iK42CHw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_SPUmOnFKZY7QGk66MENWqQ" data-element-type="video" class="zpelement zpelem-video "><style type="text/css"> @media (max-width: 767px) { [data-element-id="elm_SPUmOnFKZY7QGk66MENWqQ"].zpelem-video iframe.zpvideo{ width:560px !important; height:315px !important; } } @media all and (min-width: 768px) and (max-width:991px){ [data-element-id="elm_SPUmOnFKZY7QGk66MENWqQ"].zpelem-video iframe.zpvideo{ width:560px !important; height:315px !important; } } </style><div class="zpvideo-container zpiframe-align-left zpiframe-mobile-align-center zpiframe-tablet-align-center"><iframe class="zpvideo " width="560" height="315" src="https://www.youtube.com/embed/yRuqmu4GZjw?si=SS4xftBRVf9rBvlu" frameborder="0" allowfullscreen></iframe></div>
</div></div><div data-element-id="elm_ezbzbq_FLZqMfGlSWx8ZHg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_b53MkeDXKZ_wq3JOD4mlxA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div>The good news is you don't need a massive overhaul. You just need to start closing the gap between what you're paying for and what your people actually know how to use.</div><div><br/></div><div><p>And that's exactly what we built our Microsoft 365 training for. Self-paced, practical, video-based modules covering everything from M365 navigation basics through to Power Automate and Copilot — across four learning tracks designed for different roles in your organisation. And because we're based in South Africa and believe people learn best in their own language, every module is available in English, Afrikaans, and isiZulu.</p><p><br/></p><p>Because your licence isn't the problem. The gap between the licence and your team's knowledge is.</p></div></div><p></p></div>
</div></div></div><div data-element-id="elm_kDtHCh6SqOUCovt2e_iOOQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_sh1OPlN19E-7eA625mKRLw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_PJT5QTmFQWX3DNkwzkOePw" data-element-type="button" class="zpelement zpelem-button "><style></style><div class="zpbutton-container zpbutton-align-center zpbutton-align-mobile-center zpbutton-align-tablet-center"><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-roundcorner " href="https://www.gtconsult.com/ms365-training" target="_blank"><span class="zpbutton-content">Join the Waitlist</span></a></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Wed, 18 Feb 2026 14:50:11 +0000</pubDate></item><item><title><![CDATA[SharePoint Online CSP Enforcement: What Admins Need to Do Before March 1, 2026]]></title><link>https://www.gtconsult.com/blogs/post/sharepoint-online-csp-enforcement-what-admins-need-to-do-before-march-1-2026</link><description><![CDATA[<img align="left" hspace="5" src="https://www.gtconsult.com/Blog Site/Sharepoint Online Blog Thumbnail.png"/>Microsoft is enforcing CSP in SharePoint Online on March 1, 2026. Non-compliant scripts will be blocked. Here's what's changing, what's at risk, and how to prepare your environment before enforcement goes live.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_-0L9C26FTlKM51UiBo7DSg" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_tUpCwpCaT4-un0uBnOvT7w" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_CZJzgAxlQHee6CTRLafcTw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_p1sUrsOHRvSNUAwVh2gqhA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-center zptext-align-tablet-center " data-editor="true"><p><span>Microsoft is rolling out Content Security Policy (CSP) enforcement for all SharePoint Online tenants on <strong>March 1, 2026</strong>. If you manage a SharePoint environment with custom scripts, SPFx solutions, or third-party integrations, this change could break things — and the clock is ticking.</span></p></div>
</div><div data-element-id="elm_VbhnqGDtwg7XhFqWvT8i_A" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_VbhnqGDtwg7XhFqWvT8i_A"] .zpimage-container figure img { width: 1107px !important ; height: 622px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/gif%20-1-.gif" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div></div></div></div></div><div data-element-id="elm_7oG9dzK0o94X5dWLpxUa0A" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_bcOM2sWpodbhEHuWP4orNw" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_IF49qr9KNuPMqfsmJkJ-tA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_Ykm_1d-vxrx7ViPMHUkpqQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span>Here's what's changing, what's at risk, and exactly how to prepare.</span></p></div>
</div><div data-element-id="elm_-ruYHv0-QtxywY1Vhi8uVg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>What Is CSP and Why Does It Matter?</strong></h3></div>
<div data-element-id="elm_h1g4a5LpdddFnUNmbG2zwA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p>Content Security Policy is a browser-level security standard that controls which scripts a page is allowed to load and execute. It's one of the most effective defenses against cross-site scripting (XSS), clickjacking, and code injection attacks.</p><p><br/></p><p>Until now, SharePoint Online has been running CSP in <strong>report-only mode</strong> — logging violations without actually blocking anything. That changes on<strong> 1&nbsp;</strong><strong>March&nbsp;</strong>when enforcement goes live. After that date, any script that doesn't comply with the CSP rules will be blocked by the browser, potentially breaking custom web parts, third-party tools, and SPFx solutions.</p></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_C63k03WpOjqVO-KUKNwxkw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_g0pv9bUQpe9eD8VKUIMWug" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_hZZcfOgi-lonw1YMQ9PFKQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_vmS35E3ueYLV4WJyCmFAeA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Key Dates</strong><br/></h3></div>
<div data-element-id="elm_CaOcyyuPQT4LsQjI9woSRA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div></div><p></p><ul><li><strong>Now through 28 February, 2026</strong> — Report-only mode. Violations are logged but scripts still run.</li><li><strong>March 1, 2026</strong> — CSP enforcement begins. Non-compliant scripts are blocked.</li><li><strong>June 1, 2026</strong> — Extended deadline if you opt in to the 90-day delay via PowerShell.</li></ul></div>
</div></div><div data-element-id="elm_woD8kHqdhAo3VxPYhuPPoQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-6 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_0M9J7230OjOGdiEO-jD6IA" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_0M9J7230OjOGdiEO-jD6IA"] .zpimage-container figure img { width: 361px !important ; height: 255px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Calendar%20Marked.png" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div></div></div></div></div><div data-element-id="elm_WPWQAzI4y495fI6fleAG9A" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_H0HDD-OpjLnhxuitLMwuNw" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_JK7e0zW1ZJYs-_Yna9iPPg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_qT3GAR7oYe67mpnzACjSJw" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>What Will Be Blocked?</strong></h3></div>
<div data-element-id="elm_Di8I5LhFM9_tC_LC2bXzuA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><div>Not everything is affected. Here's a breakdown of the four common script patterns and their CSP impact:</div><br/></div><p></p><div><strong>1. SPFx bundles hosted in ClientSideAssets (default pattern)</strong></div><div><div>No action needed. These are trusted automatically.</div><br/><div><span style="font-weight:bold;">2. External CDN bundles via cdnBasePath</span></div><div>No action needed. SharePoint auto-adds the CDN domain to Trusted Script Sources when the app is installed.</div><br/><div><div><strong>3. External libraries loaded via the externals config</strong></div></div><div>No action needed. The CDN domain is auto-trusted.</div><br/><div><span style="font-weight:bold;">4. Dynamic script loading via SPComponentLoader.loadScript()</span></div><div>Action required. You must manually add the script source to the Trusted Script Sources list in SharePoint Admin Center.</div><br/><div><div><strong>5. Inline scripts (JavaScript in HTML, event handlers, innerHTML, document.write())</strong></div></div><div>These will be blocked outright. There is no nonce workaround — Microsoft has confirmed they will not expose nonce values. You must refactor inline scripts into external files and register them as trusted sources.</div></div></div>
</div></div></div></div></div><div data-element-id="elm_08S00E4fLYMYGIK5jqiYJw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_Pkgs6i3YtJCS-RBX82DgRQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_7llz1067Kb24MC3Irs9gDg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_iKvunFPtTIQA7VVjoQ0lXg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><span><strong>How to Audit Your Environment</strong></span></h3></div>
<div data-element-id="elm_tcqtMGfCvuWnt1bp7517GQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><h3>Step 1: Check the Browser Console</h3><p>Open any SharePoint page that uses custom solutions, press F12 to open Dev Tools, and look for CSP violation messages in the Console tab. You'll see entries like:</p><ul><li>&quot;Loading the script '&lt;url&gt;' violates the following...&quot;</li><li>&quot;Executing inline script violates the following Content Security Policy directive...&quot;</li></ul><h3><br/></h3><h3>Step 2: Use Microsoft Purview</h3><p>For a tenant-wide view, go to Microsoft Purview (purview.microsoft.com) and create an audit report filtering for the activity <strong>&quot;Violated Content Security Policy.&quot;</strong> This gives you a comprehensive list of every page and script generating violations across your environment.</p><h3><br/></h3><h3>Step 3: Review the Directives</h3><p>Pay attention to both <strong>Directive 12 (script-src)</strong> and <strong>Directive 13 (style-src)</strong> violations. Both are relevant — Directive 13 applies to inline code constructs that will also be blocked under enforcement.</p><h2></h2></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_jI1zMBxqXW7ghCQ9w3sK7w" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_UDCX-2Z1yHvnK_M5JKOQEg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_N2DMcIrFDcPyv17bPdd03A" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_Y8M6iJtWF5fh6FB8XuAisw" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_Y8M6iJtWF5fh6FB8XuAisw"] .zpimage-container figure img { width: 576.28px !important ; height: 436px !important ; } } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-custom zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/seinfeld%20newman%20GIF%20-1-.gif" size="custom" data-lightbox="true"/></picture></span></figure></div>
</div></div></div></div></div><div data-element-id="elm_OKcwy2FZMEcuSW2v9PYwOA" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_5ZgBdzFumTK_LxFaFc1fig" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_KJRv-IoImziWJ55OplsPyQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_titlKT_ErdkcuRHPTf7tYA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>How to Fix It</strong></h3></div>
<div data-element-id="elm_j14_P2_LnqDl3HOy2ZbiMw" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><h3>Add Trusted Script Sources</h3><p>Go to <strong>SharePoint Admin Center → Advanced → Script sources</strong> and add any external domains your solutions depend on. A few things to note:</p><ul><li>You can add up to 300 entries.</li><li>Overly broad wildcards like<span style="background-color:rgba(0, 27, 76, 0.15);"><code style="color:rgb(135, 34, 34);">*</code></span>or<span style="background-color:rgba(0, 27, 76, 0.15);color:rgb(135, 34, 34);"><code>*.domain</code></span>are not allowed.</li><li>Use targeted wildcards to consolidate where possible.</li><li>If a script loads from a CDN, you need to trust that specific CDN domain.</li></ul><div><br/></div>
<h3>Refactor Inline Scripts</h3><p>This is the big one. Any JavaScript embedded directly in HTML, event handlers, or injected via<span style="background-color:rgba(0, 27, 76, 0.15);"><code style="color:rgb(135, 34, 34);">innerHTML</code></span>or<span style="background-color:rgba(0, 27, 76, 0.15);"></span><code style="background-color:rgba(0, 27, 76, 0.15);color:rgb(135, 34, 34);">document.write()</code> must be moved into external<span style="background-color:rgba(0, 27, 76, 0.15);"><code style="color:rgb(135, 34, 34);">.js</code></span>files hosted at a trusted location. There's no shortcut here —<span style="background-color:rgba(0, 27, 76, 0.15);"><code style="color:rgb(135, 34, 34);">unsafe-inline</code></span>is not permitted, and Microsoft will not provide nonce values.</p><p><br/></p><h3>Validate Auto-Trusted Sources</h3><p>If you use<span style="background-color:rgba(0, 27, 76, 0.15);"><code style="color:rgb(135, 34, 34);">cdnBasePath</code></span>without a trailing slash, the auto-generated Trusted Script Sources entry may not match correctly. Double-check these entries manually after deploying your solutions.</p></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_NSaiPi5kldMvoHjSX0iphw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_fG2I96K6zzt4lNDPPj-7wQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_46atisbu32ScxDX4ks24dA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_mZx3fAIVJCcvxfbzg5YxYQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong><span>Buying More Time</span></strong></h3></div>
<div data-element-id="elm_R2K5gyPL-1wfhe--LBJ6kA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span>If your team isn't ready by 1 March, you can delay enforcement by 90 days using the SharePoint Online Management Shell:</span></p></div>
</div><div data-element-id="elm_eRuLatFYVRbMP68-q_Zhlg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span><img src="/Wed%20Feb%2018%202026.png" alt=""/></span></p></div>
</div><div data-element-id="elm_sSY0prPm8UEgnwn563zvmQ" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p>This pushes enforcement to June 1, 2026. It's a one-time delay — use it wisely and don't treat it as a permanent fix.</p><h2></h2></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_O1L1kyKQK73tTTlo3EfDXQ" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_lAQWlNPm4sKH8kaiH3v7Rg" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_4MVwe2BqHyeNiuX-7a5NBQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_sYMWDch2NsN5KIat7H36IA" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>What About<span style="background-color:rgba(0, 27, 76, 0.15);color:rgb(135, 34, 34);"></span></strong><code><strong style="background-color:rgba(0, 27, 76, 0.15);color:rgb(135, 34, 34);">eval()</strong></code><strong>?</strong></h3></div>
<div data-element-id="elm_T-ejPLkKv-UXKt6nLDFk6w" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span>Good news on this front: Microsoft's CSP implementation includes<span style="background-color:rgba(0, 27, 76, 0.15);color:rgb(135, 34, 34);"><code>unsafe-eval</code></span>in the<span style="background-color:rgba(0, 27, 76, 0.15);color:rgb(135, 34, 34);"><code>script-src</code></span>directive, so<span style="background-color:rgba(0, 27, 76, 0.15);color:rgb(135, 34, 34);"><code>eval()</code></span>calls in your scripts will continue to work. This was confirmed by the SharePoint team in the community discussion.</span></p></div>
</div></div></div></div></div><div data-element-id="elm_RHtr6GRGBmR3tFAIdRT6eg" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_AzVbYYv8nqrGr3bBovUNZQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_NPxLXBf8SLYJcY4CHZa5lA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_-EfThyyfU4tUFTy7EHbHaQ" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Communicate With Your Users</strong></h3></div>
<div data-element-id="elm_HzWnkATNeGVhO5HeZXLjxg" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><p>Once enforcement begins, end users may see broken functionality or warning messages on pages that rely on non-compliant scripts. Get ahead of this with proactive communication:</p><ul><li>Explain that this is a security improvement, not a system failure.</li><li>Provide a clear path for users to report issues.</li><li>Coordinate with any third-party vendors whose solutions run in your SharePoint environment.</li></ul></div><p></p></div>
</div></div></div></div></div><div data-element-id="elm_dh2TSSJp2qhNc8NZtERHQw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_VYYlFfU3nYyewCQuxO0IpQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_lDqanQc3_Gj8daBkZLxiHA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_ZWs-TfjCA26R208c5fKc5w" data-element-type="imageheadingtext" class="zpelement zpelem-imageheadingtext "><style> @media (min-width: 992px) { [data-element-id="elm_ZWs-TfjCA26R208c5fKc5w"] .zpimageheadingtext-container figure img { width: 500px ; height: 281.00px ; } } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimageheadingtext-container zpimage-with-text-container zpimage-align-left zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-medium zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Chicago%20Pd%20Nbc%20GIF%20by%20One%20Chicago.gif" data-src="/Blog%20Site/Chicago%20Pd%20Nbc%20GIF%20by%20One%20Chicago.gif" size="medium" data-lightbox="true"/></picture></span></figure><div class="zpimage-headingtext-container"><h3 class="zpimage-heading zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left" data-editor="true"><span><strong>Communicate With Your Users</strong></span></h3><div class="zpimage-text zpimage-text-align-left zpimage-text-align-mobile-left zpimage-text-align-tablet-left " data-editor="true"><p>Once enforcement begins, end users may see broken functionality or warning messages on pages that rely on non-compliant scripts.&nbsp;</p><p><br/></p><p>Get ahead of this with proactive communication:</p><p><br/></p><li>​Explain that this is a security improvement, not a system failure.</li><ul><li>Provide a clear path for users to report issues. </li><li>Coordinate with any third-party vendors whose solutions run in your SharePoint environment.</li></ul><p><br/></p></div>
</div></div></div></div></div></div></div><div data-element-id="elm_3l1TsxwDj2JcLX65iyMcoQ" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_5QVIQ2sdjJLK7lYj1a0DNA" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column="false"><style type="text/css"></style><div data-element-id="elm_2rGfj-MKZ4kDJ2q1W7QK-g" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"></style><div data-element-id="elm_JV9DaUbiwMhMlPuHwmt51w" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h3
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Bottom Line</strong></h3></div>
<div data-element-id="elm_AT68dZubYSHhDDEj24CT7A" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p><span>CSP enforcement is a welcome security improvement, but it requires hands-on preparation. The report-only window closes on February 28. Use the time you have to audit violations in Purview, fix inline scripts, register trusted sources, and communicate the change to your users. If you need more time, enable the 90-day delay — but start the work now.</span></p></div>
</div><div data-element-id="elm_RBLvefB5BMs5nShxZ9l-tg" data-element-type="heading" class="zpelement zpelem-heading "><style></style><h5
 class="zpheading zpheading-style-none zpheading-align-left zpheading-align-mobile-left zpheading-align-tablet-left " data-editor="true"><strong>Further reading:</strong></h5></div>
<div data-element-id="elm_yJb4seQ5TzGthdNCJ7D35Q" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-left zptext-align-mobile-left zptext-align-tablet-left " data-editor="true"><p></p><div><li><a href="https://learn.microsoft.com/en-us/sharepoint/dev/spfx/content-securty-policy-trusted-script-sources">Support for Content Security Policy (CSP) in SharePoint Online — Microsoft Learn</a></li><li><a href="https://techcommunity.microsoft.com/blog/spblog/sharepoint-online-content-security-policy-csp-enforcement-dates-and-guidance/4472662">SharePoint Online CSP: Enforcement Dates and Guidance — Microsoft Tech Community</a></li></div><p></p></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Wed, 18 Feb 2026 13:04:00 +0000</pubDate></item><item><title><![CDATA[GTconsult: Your Trusted Microsoft Solutions Partner for Modern Work]]></title><link>https://www.gtconsult.com/blogs/post/gtconsult-your-trusted-microsoft-solutions-partner-for-modern-work</link><description><![CDATA[<img align="left" hspace="5" src="https://www.gtconsult.com/Blog Site/Microsft Partner Thumbnail.jpg"/>A Modern Work Partner boosts productivity, aids hybrid work using Microsoft 365, and ensures success. GTconsult is one such trusted partner!]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_61UNwHRjTHi19eivaZ95xg" data-element-type="section" class="zpsection "><style type="text/css"> [data-element-id="elm_61UNwHRjTHi19eivaZ95xg"].zpsection{ border-radius:1px; } </style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_0h7BOII6QiqtJsRRSXhF6A" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- zpbackground-size-cover zpbackground-position-left-center zpbackground-repeat-all zpbackground-attachment-scroll " data-equal-column=""><style type="text/css"> [data-element-id="elm_0h7BOII6QiqtJsRRSXhF6A"].zprow{ background-image:linear-gradient(to bottom, rgba(1,58,81,0.55), rgba(1,58,81,0.55)), url(/Blog%20Site/businessman-typing-laptop-co-working-space%20-1-.jpg); border-radius:1px; } </style><div data-element-id="elm_HO5IxfX9TMSlPAxF5fcDww" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"> [data-element-id="elm_HO5IxfX9TMSlPAxF5fcDww"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_iGZBljX-Ltx7pa5wp25hmQ" data-element-type="heading" class="zpelement zpelem-heading "><style> [data-element-id="elm_iGZBljX-Ltx7pa5wp25hmQ"].zpelem-heading { border-radius:1px; } </style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><span style="color:rgb(255, 255, 255);">Howdy, Partner!</span></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote></h2></div>
<div data-element-id="elm_GEVNeUACSt6C4iuXUj_X2Q" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_GEVNeUACSt6C4iuXUj_X2Q"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-center " data-editor="true"><p><span style="font-size:11pt;color:rgb(255, 255, 255);">A Solutions Partner for Modern Work is one who demonstrates broad capability to help customers boost productivity and make the shift to hybrid work by using Microsoft 365. These partners are recognized as having commitment to training and accreditation, and a proven record in delivering solutions that lead to customer success. One such Microsoft Partner is GTconsult!</span><br></p></div>
</div></div></div></div></div><div data-element-id="elm_pUdfjD8ONCdtH_H6mT1oWA" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_pUdfjD8ONCdtH_H6mT1oWA"].zpsection{ border-radius:1px; } </style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_Na0W2XY1o5w6SFULE6i82A" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column=""><style type="text/css"> [data-element-id="elm_Na0W2XY1o5w6SFULE6i82A"].zprow{ border-radius:1px; } </style><div data-element-id="elm_WoMHwZ9tDoAOBzqsyYVZoQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_WoMHwZ9tDoAOBzqsyYVZoQ"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_ZTAVJ4T4ozkhIDT-6Qe_2A" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_ZTAVJ4T4ozkhIDT-6Qe_2A"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><div style="color:inherit;"><p>In an ever-evolving world, modern businesses require more than just conventional solutions; they need innovations that drive success. At GTconsult, we're thrilled to share some amazing news that sets us apart as a pioneer in the realm of modern work. We're proud to announce that we've achieved the coveted Microsoft Solutions Partner for Modern Work, making us one of the first Microsoft partners to earn this distinguished recognition.</p><p>You may be reading this wondering: What is it? What’s the big deal?</p></div></div>
</div><div data-element-id="elm_IkWtUqyNJc9PvvQ8QgGiXg" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_IkWtUqyNJc9PvvQ8QgGiXg"] .zpimagetext-container figure img { width: 219px !important ; height: 237.26px !important ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_IkWtUqyNJc9PvvQ8QgGiXg"] .zpimagetext-container figure img { width:219px ; height:237.26px ; } } @media (max-width: 767px) { [data-element-id="elm_IkWtUqyNJc9PvvQ8QgGiXg"] .zpimagetext-container figure img { width:219px ; height:237.26px ; } } [data-element-id="elm_IkWtUqyNJc9PvvQ8QgGiXg"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-custom zpimage-tablet-fallback-custom zpimage-mobile-fallback-custom hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Point.jpg" width="219" height="237.26" loading="lazy" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><b style="color:rgb(166, 206, 57);"><span style="font-size:18px;">What is a Solutions Partner for Modern Work?</span></b></p><p style="color:inherit;">&nbsp;&nbsp;&nbsp;&nbsp;</p><p style="color:inherit;">A Solutions Partner for Modern Work is a special distinction granted to companies that have proven their expertise in helping clients enhance productivity and smoothly transition to the world of hybrid work through the power of Microsoft 365.&nbsp;</p><p style="color:inherit;"><span style="color:inherit;"><br></span></p><p style="color:inherit;"><span style="color:inherit;">This coveted designation is not merely granted; it's earned through dedication, expertise, and a deep commitment to our clients. So, what does it take to join the ranks of recognized and trusted partners?</span><br></p><p style="color:inherit;"><span style="color:inherit;"><br></span></p><div style="color:inherit;"><div>Achieving the Microsoft Solutions Partner for Modern Work status involves meeting a set of stringent criteria:</div><div><br></div><div><ol><li>Performance Excellence: Companies must consistently deliver high-quality solutions and services to clients. Client satisfaction is a crucial factor.</li><li>Skill Development: Demonstrating expertise through intermediate and advanced certifications in Microsoft 365 is a must. This showcases a partner's commitment to staying up-to-date with the latest technologies.</li><li>Customer Success Metrics: Partners need to contribute to the growth of their clients' businesses. Success is gauged through usage growth and the successful deployment of solutions.</li><li>Case Studies and Recommendations: Partners are often required to provide case studies and client recommendations that highlight their achievements in enabling modern work environments.</li></ol><div><br></div></div><div><span style="color:inherit;">For more information about this designation, please visit:&nbsp;<a href="https://partner.microsoft.com/en-US/asset/collection/solutions-partner-for-modern-work#/">https://partner.microsoft.com/en-US/asset/collection/solutions-partner-for-modern-work#/</a></span><br></div></div></div>
</div></div><div data-element-id="elm_p2wmVvIW9W1oq44tzaMUwQ" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_p2wmVvIW9W1oq44tzaMUwQ"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><div><p><b><span style="font-size:18px;color:rgb(166, 206, 57);">What does it mean?</span></b></p><p style="color:inherit;"><span style="color:inherit;">The path to becoming a Microsoft Solutions Partner for Modern Work is a journey filled with learning, growth, and dedication. It's a reflection of the commitment of companies like GTconsult to helping clients unlock their full potential in the modern work landscape.</span><b><br></b></p><p style="color:inherit;"><span style="color:inherit;"><br></span></p><div style="color:inherit;"><div>At GTconsult, we've not only met these requirements but exceeded them. Our journey to this designation is a testament to our passion for innovation, dedication to research, and commitment to serving our clients.</div><br><div>Our team's continuous development, unwavering support, and top-notch security measures are the cornerstones of our success. We stand as a reliable partner, trusted by Microsoft, and ready to help you embrace the future of modern work.</div><div><br></div></div><p style="color:inherit;">In simple terms, this designation means that GTconsult has met the requirements and is trusted by Microsoft to deliver Modern Work solutions in the realm of Microsoft 365. Our clients can rest assured that when they partner with GTconsult, they are partnering with one of the best in the business.</p><p style="color:inherit;"><br></p><p style="color:inherit;"><span style="color:inherit;">Achieving the Microsoft Solutions Partner for Modern Work status isn't just a recognition; it's a promise of excellence, commitment, and transformation. It's our commitment to you, our valued clients, to provide the very best in the world of modern work. Explore the possibilities with GTconsult, your trusted partner for a brighter future.</span><br></p></div></div>
</div><div data-element-id="elm_l8c1Bl8huQu4DAzWPE2hNA" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_l8c1Bl8huQu4DAzWPE2hNA"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><div><p><b><span style="font-size:18px;color:rgb(166, 206, 57);">Why Choose GTconsult?</span></b></p><p style="color:inherit;">&nbsp;&nbsp;&nbsp;</p><p style="color:inherit;">In a constantly evolving world, GTconsult takes pride in being pioneers and early adopters in our field. We're committed to doing what's necessary to stay at the forefront. This dedication has led GTconsult to become a leading provider of SharePoint services, enabling businesses worldwide to enhance their collaboration, document management, and business intelligence.</p><p style="color:inherit;">&nbsp;&nbsp;&nbsp;</p><p style="color:inherit;">From SharePoint migration to workbenches, intranets, landing pages, penetration testing, and much more, GTconsult is your trusted partner. </p><p style="color:inherit;">&nbsp;&nbsp;&nbsp;</p><p style="color:inherit;">Our strength is built on three fundamental pillars:</p><p style="color:inherit;"><br></p></div></div>
</div><div data-element-id="elm_zS6eTXvu6pUS3sTW7zc8_g" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column=""><style type="text/css"> [data-element-id="elm_zS6eTXvu6pUS3sTW7zc8_g"].zprow{ border-radius:1px; } </style><div data-element-id="elm_saHfXylg1Hfs6eap81BE6A" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_saHfXylg1Hfs6eap81BE6A"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_kjmarI5bKw3ki4QFZ0yMvw" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_kjmarI5bKw3ki4QFZ0yMvw"] .zpimagetext-container figure img { width: 350px ; height: 82.03px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_kjmarI5bKw3ki4QFZ0yMvw"] .zpimagetext-container figure img { width:723px ; height:169.45px ; } } @media (max-width: 767px) { [data-element-id="elm_kjmarI5bKw3ki4QFZ0yMvw"] .zpimagetext-container figure img { width:415px ; height:97.27px ; } } [data-element-id="elm_kjmarI5bKw3ki4QFZ0yMvw"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/A-team%20development%20logo.png" width="415" height="97.27" loading="lazy" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><br></p></div>
</div></div><div data-element-id="elm_ogwugCAVGaeBhwvajQO7pw" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_ogwugCAVGaeBhwvajQO7pw"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/development" target="_blank"><span class="zpbutton-content">Learn More</span></a></div>
</div></div><div data-element-id="elm_mnxKJkKR2wbCuMJbIszGXg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_mnxKJkKR2wbCuMJbIszGXg"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_jupDr0EOxWyq4pAfSLAl3Q" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_jupDr0EOxWyq4pAfSLAl3Q"] .zpimagetext-container figure img { width: 255.5px !important ; height: 81px !important ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_jupDr0EOxWyq4pAfSLAl3Q"] .zpimagetext-container figure img { width:255.5px ; height:81px ; } } @media (max-width: 767px) { [data-element-id="elm_jupDr0EOxWyq4pAfSLAl3Q"] .zpimagetext-container figure img { width:255.5px ; height:81px ; } } [data-element-id="elm_jupDr0EOxWyq4pAfSLAl3Q"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-center zpimage-size-custom zpimage-tablet-fallback-custom zpimage-mobile-fallback-custom hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/A%20Team%20support.png" width="255.5" height="81" loading="lazy" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><br></p></div>
</div></div><div data-element-id="elm_0zAK6NaCWzulLuKwz24Q8Q" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_0zAK6NaCWzulLuKwz24Q8Q"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/support" target="_blank"><span class="zpbutton-content">Learn More</span></a></div>
</div></div><div data-element-id="elm_JVSBm5mC88YybQj1hSn-Yg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_JVSBm5mC88YybQj1hSn-Yg"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_YJu2B7-2rn7R1OVkddwE7Q" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_YJu2B7-2rn7R1OVkddwE7Q"] .zpimagetext-container figure img { width: 350px ; height: 81.97px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_YJu2B7-2rn7R1OVkddwE7Q"] .zpimagetext-container figure img { width:723px ; height:169.33px ; } } @media (max-width: 767px) { [data-element-id="elm_YJu2B7-2rn7R1OVkddwE7Q"] .zpimagetext-container figure img { width:415px ; height:97.19px ; } } [data-element-id="elm_YJu2B7-2rn7R1OVkddwE7Q"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/A-team%20protection%20logo.png" width="415" height="97.19" loading="lazy" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><br></p></div>
</div></div><div data-element-id="elm_1E2LADas5RB4eI-SQMR3Rw" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_1E2LADas5RB4eI-SQMR3Rw"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/protection" target="_blank"><span class="zpbutton-content">Learn More</span></a></div>
</div></div></div><div data-element-id="elm_iL4FD0kUnd81L2IYVfOX9g" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_iL4FD0kUnd81L2IYVfOX9g"] .zpimagetext-container figure img { width: 475.64px !important ; height: 234px !important ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_iL4FD0kUnd81L2IYVfOX9g"] .zpimagetext-container figure img { width:475.64px ; height:234px ; } } @media (max-width: 767px) { [data-element-id="elm_iL4FD0kUnd81L2IYVfOX9g"] .zpimagetext-container figure img { width:475.64px ; height:234px ; } } [data-element-id="elm_iL4FD0kUnd81L2IYVfOX9g"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-custom zpimage-tablet-fallback-custom zpimage-mobile-fallback-custom hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Solution%20Partner.png" width="475.64" height="234" loading="lazy" size="custom" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p class="MsoNormal"><b><span style="font-size:18px;color:rgb(166, 206, 57);">What Sets Us Apart?</span></b></p><p class="MsoNormal">&nbsp;&nbsp;</p><p class="MsoNormal">We're thrilled about this distinction, and it's not just for us—it's for you, our valued clients. When you choose GTconsult, you're partnering with experts who are not only passionate about what they do but are also recognized and trusted by Microsoft to deliver top-notch services in the Microsoft 365 ecosystem.</p><p class="MsoNormal">&nbsp;&nbsp;</p><p class="MsoNormal">But don't just take our word for it. Explore our website to learn more about our services, our approach, and the remarkable clients we've had the privilege of working with.</p><p></p><p class="MsoNormal">&nbsp;&nbsp;</p></div>
</div></div><div data-element-id="elm_9HCZewMzzZsSWSjybsHT4Q" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_9HCZewMzzZsSWSjybsHT4Q"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><div><p><b style="color:rgb(166, 206, 57);"><span style="font-size:18px;">Ready to Elevate Your Success with GTconsult?</span></b></p><p style="color:inherit;">&nbsp;</p><p style="color:inherit;">Are you ready to experience the difference? Let's embark on a journey of innovation, collaboration, and success together.</p><p style="color:inherit;"><br></p><p style="color:inherit;">Contact us today and let us (aka Microsoft Solutions Partners for Modern Work) enable productivity for your organization!</p></div></div>
</div><div data-element-id="elm_7P4TTUhdxFU0Kd7bLlcROw" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_7P4TTUhdxFU0Kd7bLlcROw"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/contact" target="_blank"><span class="zpbutton-content">Ready, Set, Consult!</span></a></div>
</div><div data-element-id="elm_gANKhp-oN5pOCLaTNldNmg" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_gANKhp-oN5pOCLaTNldNmg"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><p><br></p></div>
</div></div></div></div></div><div data-element-id="elm_FToG3m4nNmqPths8nlDmQw" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg zpbackground-size-cover zpbackground-position-center-center zpbackground-repeat-all zpbackground-attachment-scroll " style="background-image:linear-gradient(to bottom, rgba(30, 34, 45, 0.8), rgba(30, 34, 45, 0.8)), url(https://static.zohocdn.com/sites/stock-images/images/zpstock-image-08.jpg);"><style type="text/css"> [data-element-id="elm_FToG3m4nNmqPths8nlDmQw"].zpsection{ border-radius:1px; } </style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_Ve_4mX8mspvkFQFzI7ELig" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column=""><style type="text/css"> [data-element-id="elm_Ve_4mX8mspvkFQFzI7ELig"].zprow{ border-radius:1px; } </style><div data-element-id="elm_dBQBDO4iSWXLXxKVH2PIGw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_dBQBDO4iSWXLXxKVH2PIGw"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_JyHFulJFTIHIO-9XPlSxiA" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_JyHFulJFTIHIO-9XPlSxiA"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><p style="text-align:center;"><span style="font-size:28px;font-weight:700;color:rgb(255, 255, 255);font-family:&quot;Noto Sans&quot;, sans-serif;">Keep Reading</span></p><p style="text-align:center;"><span style="color:rgb(255, 255, 255);">Check out our other blogs right below:</span><br></p></div>
</div><div class="zpelement zpelem-carousel " data-element-id="elm_KaOxptgUw5gWwrrg1um1tQ" data-element-type="carousel" data-currentslide-index="0" data-transition="slide_left" data-slider-interval="5000" data-zs-autoslide="true" data-zs-slidepause-option="false" data-zs-slider="min-height-el: zpcarousel-content-container;arrow-cont: zpcarousel-arrows-container; active-controller: zpcarousel-controller-active; controller-cont: zpcarousel-controller-container; controller: zpcarousel-controller; right-arrow: zpcarousel-arrow-right; left-arrow: zpcarousel-arrow-left;active-slide:zpcarousel-content-active; slide: zpcarousel-content; slides-cont: zpcarousel-content-container;content-cont : zpcarousel-content-inner; background: false;slide-pause-btn:zpcarousel-pause-btn;slide-play-btn:zpcarousel-play-btn;"><div class="zpcarousel-container zpcarousel-style-01"><style></style><div class="zpcarousel-content-container"><div class="zpelement zpcarousel-content " data-element-type="carouselslide" data-element-id="elm_QxCeDZGRCozjx7tGPk4zgw" data-slide-name="Slide 1"><div class="zpcarousel-content-inner"><div data-element-id="elm_26PcYh3L6CN3hia7v6q8sA" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column=""><style type="text/css"> [data-element-id="elm_26PcYh3L6CN3hia7v6q8sA"].zprow{ border-radius:1px; } </style><div data-element-id="elm_15G3cVPb7hG3Il1-toqthw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_15G3cVPb7hG3Il1-toqthw"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_paiqzODytY8Rih9y7G0fZA" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_paiqzODytY8Rih9y7G0fZA"] .zpimagetext-container figure img { width: 307px ; height: 172.69px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_paiqzODytY8Rih9y7G0fZA"] .zpimagetext-container figure img { width:723px ; height:406.69px ; } } @media (max-width: 767px) { [data-element-id="elm_paiqzODytY8Rih9y7G0fZA"] .zpimagetext-container figure img { width:415px ; height:233.44px ; } } [data-element-id="elm_paiqzODytY8Rih9y7G0fZA"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-roundcorner zpimage-space-none " src="/Blog%20Site/Migration%20tools.jpg" width="415" height="233.44" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><span style="font-size:20px;color:rgb(255, 255, 255);">Migration Tools and Technologies</span><br></p><p><span style="color:inherit;"><span style="font-size:20px;"><br></span></span></p></div>
</div></div><div data-element-id="elm_ifGJ9_sd2YOl4gvq5tGePg" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_ifGJ9_sd2YOl4gvq5tGePg"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/blogs/post/5-sharepoint-migration-tools-to-consider-in-2024" target="_blank" title="5 SharePoint Migration Tools to consider in 2024"><span class="zpbutton-content">Read Me</span></a></div>
</div></div><div data-element-id="elm_GkG9-yfzZWKTwA6QTvQIOg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_GkG9-yfzZWKTwA6QTvQIOg"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_N_2VnF4BKyif7c45Xc_ddw" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_N_2VnF4BKyif7c45Xc_ddw"] .zpimagetext-container figure img { width: 307px ; height: 172.69px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_N_2VnF4BKyif7c45Xc_ddw"] .zpimagetext-container figure img { width:723px ; height:406.69px ; } } @media (max-width: 767px) { [data-element-id="elm_N_2VnF4BKyif7c45Xc_ddw"] .zpimagetext-container figure img { width:415px ; height:233.44px ; } } [data-element-id="elm_N_2VnF4BKyif7c45Xc_ddw"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-roundcorner zpimage-space-none " src="/Blog%20Site/Upgrade%20Thumnail.jpg" width="415" height="233.44" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><span style="font-size:20px;color:rgb(255, 255, 255);">Upgrading SharePoint 2016 to SharePoint 2019 step-by-step</span><br></p></div>
</div></div><div data-element-id="elm_rNwyE0_QDVaomBcHVZ5Mdw" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_rNwyE0_QDVaomBcHVZ5Mdw"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/blogs/post/upgrading-from-sharepoint-2016-to-sharepoint-2019" target="_blank"><span class="zpbutton-content">Read Me</span></a></div>
</div></div></div></div></div><div class="zpelement zpcarousel-content " data-element-type="carouselslide" data-element-id="elm_skE-PekasZWHguxUwug6Pg" data-slide-name="Slide 2"><div class="zpcarousel-content-inner"><div data-element-id="elm_2ENZbGGtij4hEVKdBxmigw" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column=""><style type="text/css"> [data-element-id="elm_2ENZbGGtij4hEVKdBxmigw"].zprow{ border-radius:1px; } </style><div data-element-id="elm_AkqxR_uJnJmCUe3FViRfAw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_AkqxR_uJnJmCUe3FViRfAw"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_5na0LFLycOySW9ARie5a7g" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_5na0LFLycOySW9ARie5a7g"] .zpimagetext-container figure img { width: 307px ; height: 172.69px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_5na0LFLycOySW9ARie5a7g"] .zpimagetext-container figure img { width:723px ; height:406.69px ; } } @media (max-width: 767px) { [data-element-id="elm_5na0LFLycOySW9ARie5a7g"] .zpimagetext-container figure img { width:415px ; height:233.44px ; } } [data-element-id="elm_5na0LFLycOySW9ARie5a7g"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/SharePoint%20Write%20Up%20Thumbnail.jpg" width="415" height="233.44" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><span style="font-size:20px;"><span style="color:rgb(255, 255, 255);">SharePoint Online: The Upgrade Your Business Needs</span><span style="color:inherit;">&nbsp;</span></span><br></p></div>
</div></div><div data-element-id="elm_4c9rPFeH6JpKRhHCuKpbsw" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_4c9rPFeH6JpKRhHCuKpbsw"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/blogs/post/sharepoint-online-the-upgrade-your-business-needs" target="_blank"><span class="zpbutton-content">Read Me</span></a></div>
</div></div><div data-element-id="elm_oqPV433Jdnh142OgY0v2Zw" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_oqPV433Jdnh142OgY0v2Zw"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_0RIu-R7s0W2M_Y8-I36oCg" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_0RIu-R7s0W2M_Y8-I36oCg"] .zpimagetext-container figure img { width: 307px ; height: 172.69px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_0RIu-R7s0W2M_Y8-I36oCg"] .zpimagetext-container figure img { width:723px ; height:406.69px ; } } @media (max-width: 767px) { [data-element-id="elm_0RIu-R7s0W2M_Y8-I36oCg"] .zpimagetext-container figure img { width:415px ; height:233.44px ; } } [data-element-id="elm_0RIu-R7s0W2M_Y8-I36oCg"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/What%20is%20sharepoint%20Thumbnail.jpg" width="415" height="233.44" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><span style="font-size:20px;color:rgb(255, 255, 255);">What is SharePoint?</span><br></p><p><span style="color:inherit;"><span style="font-size:20px;"><br></span></span></p></div>
</div></div><div data-element-id="elm_jUzDpBXUSs6F9ZEy_WJZOQ" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_jUzDpBXUSs6F9ZEy_WJZOQ"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/blogs/post/what-is-sharepoint" target="_blank"><span class="zpbutton-content">Read Me</span></a></div>
</div></div><div data-element-id="elm_RF2c_Z5NKFQM03nQ_Y3Mgg" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_RF2c_Z5NKFQM03nQ_Y3Mgg"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_Voi1R5tyPIpLcI5ePpSajw" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_Voi1R5tyPIpLcI5ePpSajw"] .zpimagetext-container figure img { width: 307px ; height: 172.69px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_Voi1R5tyPIpLcI5ePpSajw"] .zpimagetext-container figure img { width:723px ; height:406.69px ; } } @media (max-width: 767px) { [data-element-id="elm_Voi1R5tyPIpLcI5ePpSajw"] .zpimagetext-container figure img { width:415px ; height:233.44px ; } } [data-element-id="elm_Voi1R5tyPIpLcI5ePpSajw"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Migration.png" width="415" height="233.44" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><span style="font-size:20px;color:rgb(255, 255, 255);">Migrate SharePoint with GTconsult’s A Team</span><br></p></div>
</div></div><div data-element-id="elm_oTmSPWmb4xFs4BVlUrW9Eg" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_oTmSPWmb4xFs4BVlUrW9Eg"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/sharepoint-migration" target="_blank"><span class="zpbutton-content">Read Me</span></a></div>
</div></div></div></div></div><div class="zpelement zpcarousel-content " data-element-type="carouselslide" data-element-id="elm_repBM31tNgHljystv8TLIg" data-slide-name="Slide 3"><div class="zpcarousel-content-inner"><div data-element-id="elm_8z8o2YQ65-Aw5PNAmngsOQ" data-element-type="row" class="zprow zprow-container zpalign-items-flex-start zpjustify-content-flex-start zpdefault-section zpdefault-section-bg " data-equal-column=""><style type="text/css"> [data-element-id="elm_8z8o2YQ65-Aw5PNAmngsOQ"].zprow{ border-radius:1px; } </style><div data-element-id="elm_QPelM4UKshteEd5KU5w2vA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_QPelM4UKshteEd5KU5w2vA"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_DxgPyWcIyOAeHgzETlVewA" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_DxgPyWcIyOAeHgzETlVewA"] .zpimagetext-container figure img { width: 980px ; height: 551.25px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_DxgPyWcIyOAeHgzETlVewA"] .zpimagetext-container figure img { width:723px ; height:406.69px ; } } @media (max-width: 767px) { [data-element-id="elm_DxgPyWcIyOAeHgzETlVewA"] .zpimagetext-container figure img { width:415px ; height:233.44px ; } } [data-element-id="elm_DxgPyWcIyOAeHgzETlVewA"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/6%20EASY%20STEPS.png" width="415" height="233.44" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><span style="font-size:20px;color:rgb(255, 255, 255);">6 Easy Steps for an Office 365 Tenant to Tenant Migration</span><br></p></div>
</div></div><div data-element-id="elm_R_VgeDrTOyBwphwyL9exag" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_R_VgeDrTOyBwphwyL9exag"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/6-easy-steps-for-a-office-365-tenant-to-tenant-migration" target="_blank"><span class="zpbutton-content">Read Me</span></a></div>
</div></div><div data-element-id="elm_t1CA_WguMukMCIa6om2xhA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_t1CA_WguMukMCIa6om2xhA"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_Yah9Mn29Uc5sgDmi9cE2NA" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_Yah9Mn29Uc5sgDmi9cE2NA"] .zpimagetext-container figure img { width: 307px ; height: 172.69px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_Yah9Mn29Uc5sgDmi9cE2NA"] .zpimagetext-container figure img { width:723px ; height:406.69px ; } } @media (max-width: 767px) { [data-element-id="elm_Yah9Mn29Uc5sgDmi9cE2NA"] .zpimagetext-container figure img { width:415px ; height:233.44px ; } } [data-element-id="elm_Yah9Mn29Uc5sgDmi9cE2NA"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/Checklist%2016%20by%209.png" width="415" height="233.44" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><div><p><span style="font-size:20px;color:rgb(255, 255, 255);">SharePoint Migration Checklist</span><br></p><div style="color:inherit;"><span style="font-size:20px;"><br></span></div></div></div>
</div></div><div data-element-id="elm_HtXDrcuGFGa-71v27JExgw" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_HtXDrcuGFGa-71v27JExgw"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/sharepoint-migration-checklist" target="_blank"><span class="zpbutton-content">Read Me</span></a></div>
</div></div><div data-element-id="elm_76rfqJRTMne47D7TwggN2w" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-4 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_76rfqJRTMne47D7TwggN2w"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_rOcVKop2iLVujVf7zMsnhQ" data-element-type="imagetext" class="zpelement zpelem-imagetext "><style> @media (min-width: 992px) { [data-element-id="elm_rOcVKop2iLVujVf7zMsnhQ"] .zpimagetext-container figure img { width: 307px ; height: 172.57px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_rOcVKop2iLVujVf7zMsnhQ"] .zpimagetext-container figure img { width:723px ; height:406.40px ; } } @media (max-width: 767px) { [data-element-id="elm_rOcVKop2iLVujVf7zMsnhQ"] .zpimagetext-container figure img { width:415px ; height:233.27px ; } } [data-element-id="elm_rOcVKop2iLVujVf7zMsnhQ"].zpelem-imagetext{ border-radius:1px; } </style><div data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimagetext-container zpimage-with-text-container zpimage-align-left zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
            type:fullscreen,
            theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Blog%20Site/CCI%20Case%20Study.png" width="415" height="233.27" size="fit" data-lightbox="true"/></picture></span></figure><div class="zpimage-text zpimage-text-align-left " data-editor="true"><p><span style="font-size:20px;color:rgb(255, 255, 255);">CCI Case Study</span><br></p><p><span style="color:inherit;"><span style="font-size:20px;"><br></span></span></p></div>
</div></div><div data-element-id="elm_SLxJDGaVyCv0yJvpWYcOFA" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_SLxJDGaVyCv0yJvpWYcOFA"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="https://www.gtconsult.com/blogs/post/cci-case-study" target="_blank"><span class="zpbutton-content">Read Me</span></a></div>
</div></div></div></div></div></div><div class="zpcarousel-arrows-container zpcarousel-arrow-type-01" data-arrow-style="2"><div class="zpcarousel-arrow-left" tabindex="0" role="button" aria-label="Previous"><svg aria-hidden="true" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" class="svg-icon-18px"><path d="M0,16c0,0.3,0.1,0.5,0.3,0.7l9.9,10c0.4,0.4,1,0.4,1.4,0c0.4-0.4,0.4-1,0-1.4L3.4,17H31 c0.6,0,1-0.5,1-1s-0.4-1-1-1H3.4l8.2-8.3c0.4-0.4,0.4-1,0-1.4c-0.4-0.4-1-0.4-1.4,0l-9.9,10C0.1,15.5,0,15.7,0,16z"></path></svg></div>
<div class="zpcarousel-arrow-right" tabindex="0" role="button" aria-label="Next"><svg aria-hidden="true" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" class="svg-icon-18px"><path id="arrow-right-style2-Arrow_Forward" d="M32,16c0-0.3-0.1-0.5-0.3-0.7l-9.9-10c-0.4-0.4-1-0.4-1.4,0c-0.4,0.4-0.4,1,0,1.4 l8.2,8.3H1c-0.6,0-1,0.5-1,1s0.4,1,1,1h27.6l-8.2,8.3c-0.4,0.4-0.4,1,0,1.4c0.4,0.4,1,0.4,1.4,0l9.9-10C31.9,16.5,32,16.3,32,16z"></path></svg></div>
</div><div class="zpcarousel-controller-container zpcarousel-controller-type-01"><svg class="zpcarousel-pause-btn" tabindex="0" role="button" aria-label="Pause" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M3.85.53C3.6.5 3.34.5 3.07.5 1.68.5.95 1.09.95 2.18V12c.03.74.56 1.32 1.44 1.44.53.07 1.11.07 1.64 0 .9-.13 1.42-.72 1.42-1.5V2.07c0-.09 0-.18-.03-.28-.1-.66-.75-1.17-1.59-1.26h.01ZM11.43.53C11.18.5 10.92.5 10.65.5c-1.39 0-2.12.59-2.12 1.68V12c.03.74.56 1.32 1.44 1.44.53.07 1.11.07 1.64 0 .9-.13 1.42-.72 1.42-1.5V2.07c0-.09 0-.18-.03-.28-.1-.66-.75-1.17-1.59-1.26h.01Z"/></svg><svg class="zpcarousel-play-btn" tabindex="0" role="button" aria-label="Play" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M.59 7.02C.57 5.33.57 3.63.51 1.94.45.63 1.72-.17 2.9.45c3.2 1.68 6.42 3.32 9.64 4.96.59.3.95.76.96 1.43 0 .66-.34 1.11-.91 1.43-3.18 1.75-6.35 3.5-9.52 5.25-1.2.66-2.39-.04-2.41-1.41C.63 10.42.61 8.72.59 7.03Z"/></svg><div class="zpcarousel-controller zpcarousel-controller-active" data-slide-index="0"></div>
<div class="zpcarousel-controller " data-slide-index="1"></div><div class="zpcarousel-controller " data-slide-index="2"></div>
</div></div></div></div></div></div></div></div> ]]></content:encoded><pubDate>Thu, 26 Oct 2023 10:41:40 +0000</pubDate></item></channel></rss>