In SharePoint Online è ora possibile configurare una specifica document library per essere raggiungibile senza autenticazione e fungere quindi da CDN per i contenuti che decidete di inserire.
Questa funzionalità è stata aggiunta per dare una rapida opzione di deployment per le Client Side Web Part dello SharePoint Framework che, di default, non contengono la logica della web part ma solo la referenza al bundle Javascript generato e hostato all'esterno di SharePoint.
Vediamo come possiamo abilitare questa opzione all'interno del nostro tenant.
Per prima cosa, dobbiamo controllare il valore della proprietà PublicCdnEnabled all'interno del tenant Office 365 ed eventualmente abilitarla. Per farlo ci serve una versione aggiornata della SharePoint Online Management Shell, così da poter eseguire i seguenti comandi Powershell:
$creds = Get-Credential Connect-SPOService -Url https://vostrodominio-admin.sharepoint.com/ -Credential $creds Get-SPOTenant | fl *cdn*
Ecco l'output del comando lanciato sul nostro tenant.
Nel nostro tenant la proprietà era disabilitata, ecco quindi il comando per abilitarla:
Set-SPOTenant -PublicCdnEnabled $true
In aggiunta possiamo limitare questa funzionalità a solamente certe tipologie di file, modificando il valore della proprietà PublicCdnAllowedFileTypes.
Ok, ora che abbiamo abilitato il tenant Office 365, dobbiamo configurare la document library che abbiamo scelto per fungere da repository dei file che abbiamo intenzione di esporre tramite CDN.
Ecco i comandi Powershell da eseguire:
New-SPOPublicCdnOrigin -Url "https://vostrodominio.sharepoint.com/vostra-doc-lib/folder"
Get-SPOPublicCdnOrigins
Questo il risultato.
Ora possiamo inserire un file qualsiasi all'interno della document library e testarne l'accesso, senza autenticazione, tramite il proprio browser e un indirizzo generato partendo dal valore della proprietà "Id" ritornata dall'esecuzione del precedente comando.
Ecco la regola:
https://publiccdn.sharepointonline.com/[tenant domain]/[ID]/[sub-path]
Nel nostro caso l'indirizzo diventa il seguente:
https://publiccdn.sharepointonline.com/dev4side.com/14160072373330d861f2b183ae0201290618f25d84d10347dc1afca81fae50b8f392225c/Folder
Ora siamo pronti per inserire i nostri file ed utilizzare la document library come CDN pubblico.
Nota bene: questo CDN può essere utilizzato solamente per contenuti che vengono referenziati all'interno di pagine del dominio *.sharepoint.com
Per ulteriori informazioni, fate riferimento alla documentazione Microsoft.