Intro


Kreative Benutzer mögen Elemente, Dateien, oder ganze Liste aus Versehen löschen.
Office 365 bietet mehrere Optionen, um versehentlichen Löschungen oder evtl. vorsätzlichen Schädigungen vorzubeugen, z.B. aus Papierkorb wiederherstellen oder von Backups nach Kontaktaufnahme mit dem MS-Support wiederherstellen. Eine der vielen Möglichkeiten, die SharePoint Online bietet ist die Möglichkeit, das "löschen" Button aus Listeneinstellungen auszublenden:



CSOM verwenden


Mithilfe SharePoint Online-SDK können die Listeigenschaften geändert werden. Verantwortlich für die "Löschen dieser Dokumentbibliothek" ist AllowDeletion. Die Eigenschaft nimmt $true oder $false als Werten.

1. Fügen Sie die SharePoint Online-SDKs zu. Die Nuget-Paketen sind hier verfügbar:
# Paths to SDK. Please verify location on your computer.
Add-Type -Path "c:\Program Files\Common Files\microsoft shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "c:\Program Files\Common Files\microsoft shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"


2. Das Kontext Erstellen, das den Anschluss an eine bestimmte Websitesammlung oder Unterwebsite ermöglicht. Danach ist es empfehlenswert, diese Verbindung zu testen:


$ctx =New-Object Microsoft.SharePoint.Client.ClientContext($Url)
$ctx .Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Username$AdminPassword)
 
  try
  {
      $ctx .ExecuteQuery()
  }
  catch [Net.WebException]
  {           
      Write-Host $Url " failed to connect to the site" $_ .Exception.Message.ToString() -ForegroundColor Red
  }


3. Laden Sie die Liste, wo Sie die AllowDeletion-Eigenschaft aktualisieren möchten:
$ctx .Load($ctx.Site)
$lista = $ctx .Web.Lists.GetByTitle($ListTitle)
$ctx .Load($lista)
$ctx .ExecuteQuery()

4. Ändern Sie die AllowDeletion-Eigenschaft und aktualisieren Sie die Liste:
$lista .AllowDeletion = $false
$lista .Update()
$ctx .ExecuteQuery()



Endergeibnis






Andere Sprachen


Office 365 data loss protection: Prevent your SharePoint list from deletion using Powershell

Referenzen


Microsoft.SharePointOnline.CSOM 16.1.8316.1200
SharePoint CSOM Version freigegeben für SharePoint Online – November 2016