Nella gestione delle vostre site collection SharePoint Online può capitarvi di trovare delle site collection configurate in modo tale da non poter essere modificabili, ne tanto meno cancellabili. Questa situazione può capitare nel caso di problemi durante creazione o cancellazione della site collection (anche da parte dei servizi automatici di Microsoft) oppure nel caso in cui l'amministratore di SharePoint Online decide di mettere in lock i contenuti per evitare delle modifiche non desiderate.
A me è capitato di cancellare un gruppo Office 365 e di ritrovarmi ancora presente la site collection SharePoint Online legata a tale gruppo, senza però la possibilità di cancellarla o di modificarne le proprietà.
Ogni volta che tentavo di eseguire il comando:
Set-SPOSite -Identity https://domain.sharepoint.com/sites/name -Title "To be deleted"
mi ritrovavo sempre con l'errore:
"Set-SPOSite: Cannot set properties on site [SITEURL] because the site is not currently available"
Eppure riuscivo tranquillamente a navigare il sito di root della site collection tramite il browser e l'account amministratore della nostra istanza SharePoint Online.
Evidentemente qualcosa si era incartato nell'automatismo di Office 365 durante la cancellazione del gruppo. Chi lo sà...
In ogni caso, sempre tramite PowerShell, abbiamo la possibilità di risolvere il problema. Basta settare la proprietà "LockState" sulla site collection che, nel caso di una site collection in lock, è l'unica proprietà che possiamo modificare.
I valori possibili per questa proprietà sono:
- NoAccess - Per mettere in lock la site collection
- Unlock - Per sbloccare la site collection
Set-SPOSite -Identity https://domain.sharepoint.com/sites/name -LockState "Unlock"
Nel caso in cui l'amministratore decide di settare questa proprietà con il valore "NoAccess" gli utenti finali riceveranno un errore 403 ad ogni richiesta verso la site collection.
Se si vuole modificare questo comportamento è necessario settare la proprietà NoAccessRedirectUrl tramite il comando Set-SPOTenant, così da specificare una pagina personalizzata per tutti i siti configurati in modalità lock.
Set-SPOTenant -NoAccessRedirectUrl "https://domain.sharepoint.com/Pages/CustomPageName.aspx"
Spero vi sia utile.