- ← How to Get the Tenant ID in SharePoint Online / Microsoft 365?
- SharePoint Online: How to Check If an External User has Accepted the Invitation? →
Salaudeen Rajack
Salaudeen Rajack - Information Technology Expert with Two-decades of hands-on experience, specializing in SharePoint, PowerShell, Microsoft 365, and related products. He has held various positions, including SharePoint Architect, Administrator, Developer and consultant, has helped many organizations to implement and optimize SharePoint solutions. Known for his deep technical expertise, He's passionate about sharing the knowledge and insights to help others, through the real-world articles! Read More
3 thoughts on “SharePoint Online: Share Site to “Everyone Except External Users” using PowerShell”
Anonymous
August 10, 2021 at 7:28 PM
Permalinkthank you so much for the script. your blog is first hit in most PS issues.
ReplyFortyTwoWest
April 7, 2021 at 8:59 AM
PermalinkGood morning. Firstly, I want to thank you for this site – your scripts have helped me on quite a few occasions. I have two questions.
Firstly, do you have an example script on how to *remove* the “Everyone” & “Everyone except external users” from all sites in a tenant? It seems my predecessor had added those groups to quite a few sites, and 2 years later it’s been found that people have been viewing information that they shouldn’t. We’ve decided to send out comms to let people know we’ll be removing those groups from all sites, and if they want them back to contact us. I just haven’t been able to figure out a script for doing it (and we have in the region of 15,000 sites in our tenant)
My second question is do you have an example for how to delete a specifically named file recursively through the subsites of a site? One of our businesses in the Netherlands has an executive site, with subsites for each board member. The structure of all the subsites is identical. The PA copies files to a folder on the root site, and then there’s a flow and some azure app that then copies the file to the same location on each subsite (again, this was done by my predecessor, and there’s no source code or any form of documentation on how it was built). What they would like to do is, if they upload a file with an exclamation mark at the beginning (eg !Document1.docx), then a script will run and DELETE the file called Document1.docx from each of the subsites. The explanation is that Document1.docx was uploaded in error, and they need to delete it, but no-one has access to all 17 board members’ subsites.
I would appreciate it if you could possibly point me in the right direction on these.
Thank you, and have a good day.
ReplyApril 28, 2021 at 4:43 PM
PermalinkHi FortyTwoWest,
1. You can find and delete these two accounts from all sites! How to Remove a User from All Sites in SharePoint Online using PowerShell, Use the Login names as: “c:0(.s|true” and “c:0-.f|rolemanager|spo-grid-all-users/$(Get-PnPTenantID)”
2. You can search for the specific file and delete it from all sites. How to Search SharePoint Online using PnP PowerShell?, Use the keyword as “filename:!Document1.docx”
Reply