This tool aims to take care of the following tasks:

You can read more about the Delete File Pattern feature here: https://www.undocumented-features.com/2018/01/10/update-to-the-onedrive-for-business-admin-tool/

You can read more about the Restore features here: https://www.undocumented-features.com/2017/10/16/recovering-from-crypto-or-ransomware-attacks-with-the-onedrive-for-business-admin-tool/

You can read more regarding all of the original features here: https://www.undocumented-features.com/2017/08/25/onedrive-for-business-admin-tool/

Most Recent Updates

Previous Updates

Edit|Remove
<# 
.SYNOPSIS 
OneDrive for Business Management Tool 
 
.DESCRIPTION 
Configure OneDrive for Business permissions and remove folders across all OD4B 
sites. 
 
.PARAMETER BlockAccess 
Block or unblock access to OneDrive for Business sites. 
 
.PARAMETER Confirm 
Use this switch parameter to confirm file or folder deletions. 
 
.PARAMETER Credential 
Used to store a credential object for connecting to SharePoint Online. 
 
.PARAMETER DeleteFilePattern 
Delete files matching pattern in a given OD4B site.  For example, deleteing all 
MP4 files.  Must use Confirm switch to delete files; otherwise, log only. Use 
a regular expression to ensure proper deletion. 
 
.PARAMETER FilesModifiedOnThisDate 
Use this parameter to specify the modified-on date for file version restores. 
For example, if you have to restore the version prior to the last modification 
5 dates ago, you could specifiy ((Get-Date).AddDays(-5)). 
 
.PARAMETER FolderSize 
Use this parameter to return the folder size for the specified users. Folder size 
does NOT include version history storage (only final version).  Output in the  
"Note" column is in megabytes (MB). 
 
.PARAMETER FolderToAdd 
String parameter with the name of a folder to add to all matching OneDrive for 
Business sites.  You must have permissions to create folders in the target 
users' OneDrive for Business sites.  You can use the GrantPermissions parameter 
to grant necessary permissions. 
 
.PARAMETER FolderToDelete 
String parameter witih the name of a folder to delete from all matching OneDrive 
for Business sites.  You must have permissions to create folders in the target 
users' OneDrive for Business sites.  You can use the GrantPermissions parameter 
to grant necessary permissions. 
 
.PARAMETER GrantPermissions 
Grant permissions to a user account.  User is made a secondary site collection 
administrator.  Useful for delegating permissions for eDiscovery. 
 
.PARAMETER GrantPermissionsTo 
Grant permissions to the user specified in this parameter.  If no user is 
specified, use the value stored in the Credential. 
 
.PARAMETER HoldStatus 
Check for In-Place Holds applied to OD4B sites (beta). 
 
.PARAMETER Identity 
Specify an individual user (by UPN or email address) for OneDrive admin 
operations.  If no identity is specified, run against all enumerated OneDrive 
for Business sites. 
 
.PARAMETER InputFile 
List of UPNs or Email addresses for OneDrive for Business sites.  If no file 
is specified, run against all enumerated OneDrive for Business sites. 
 
.PARAMETER ListOneDriveSites 
Generate a list of all OD4B sites. 
 
.PARAMETER ListOneDriveSitesOutput 
Output file for listing of OD4B sites. 
 
.PARAMETER Logfile 
Logfile for operations. 
 
.PARAMETER RestoreVerions 
Restore OneDrive for Business files in a site from saved versions. 
 
.PARAMETER RevokePermissions 
Revoke permissions for OneDrive for Business sites. 
 
.PARAMETER RevokePermissionsFor 
Revoke permissions of the named user.  If no user is specified, uses the value 
stored in the credential. 
 
.PARAMETER Tenant 
SharePoint online tenant name (e.g., contoso or contoso.onmicrosoft.com) 
 
.PARAMETER VersionsToGoBack 
Specify number of versions of files to restore. By default, go back one version. 
 
.EXAMPLE 
.\OneDriveForBusinessAdmin.ps1 -Credential (Get-Credential) -GrantPermissions -GrantPermissionsTo aylakol@contoso.com 
 
Grant permissions to aylakol@contoso.com to all OneDrive for Business sites. 
 
.EXAMPLE 
.\OneDriveForBusinessAdmin.ps1 -Credential (Get-Credential) -GrantPermissions -FolderToAdd "Sales Orders" -FolderToRemove "Shared with Everyone" 
 
Grant permissions to the user specified in -Credential, add the folder "Sales 
Orders" to the "Documents" document library, and remove the "Shared with 
Everyone" folder from the "Documents" document library. 
 
.EXAMPLE 
.\OneDriveForBusinessAdmin.ps1 -Credential (Get-Credential) -GrantPermissions -DeleteFilePattern "\.mp4$" -Confirm 
 
Grant permissions to the user specified in *Get-Credential) and delete files with extension matching .mp4. 
 
.EXAMPLE 
.\OneDriveForBusinessAdmin.ps1 -Credential (Get-Credential) -Tenant ems340903 -ListOneDriveSites 
 
Generate a list of all OneDrive for Business sites and output to default location. 
 
.LINK 
https://aka.ms/OneDriveAdmin 
 
.LINK 
https://undocumented-features.com/2017/08/25/onedrive-for-business-admin-tool/ 
 
.LINK 
https://undocumented-features.com/2017/10/16/recovering-from-crypto-or-ransomware-attacks-with-the-onedrive-for-business-admin-tool/ 
 
.NOTES 
2019-05-15     Added HoldStatus check (beta). 
2018-10-04  Added ListOneDriveSites parameter. 
            Fixed Identity parameter bug when submitting multiple users via command-line interface. 
2018-09-15    Added FolderSize parameter. 
2018-01-10    Added DeleteFilePattern parameter. Updated LogFile parameter to always generate. 
2017-10-16  Added Identity and RestoreVersions parameters 
2017-09-05    Added TrimEnd("/") to BlockAccess function 
2017-08-24    Initial release. 
#>