2
votes

I'm relatively new to SharePoint and am trying to put a bunch of Word files (that were on our network file server) into SharePoint. We have set up a document library that, by default, gives everyone access to everything. This is the desired top-level permission set because most items will work well this way.

The problem is that I have a bunch of documents I want to add and apply some specific permissions to. I can do this, but...please tell me there is some way I can do this for multiple documents at the same time. Attempting to do this one-by-one is a pain and I'm hoping for a better solution here.

Thanks very much in advance.

2
Will all of these documents with security changes all have the same settings? Or will they differ between each document?Grace Note♦

2 Answers

1
votes

Personally (and it helps that I'm a powershell msmvp) I would use powershell to do this. Either v1 or v2 should suffice. If you run powershell on one of the servers in the sharepoint farm you will be able to load the sharepoint object model directly and programatically configure the ACLs on each document. Powershell can read the ACLs from the documents in the nextwork share quite easily:

dir \\server\Documents\*.* | get-acl |`
   select path -expand access | ft -GroupBy path

This example will read all files from the share, grab the NTFS ACL from each one, expand the ACL into ACEs and will group by the path. If powershell is not running on a farm server, you can still upload and configure security via one of the webservices. PowerShell v2 would be more suitable here as it has a great cmdlet called New-WebServiceProxy that will generate a proxy in a snap.

If you want some help with the specifics of the script, follow me on twitter @oising and DM me.

-Oisin

2
votes

You can create a folder and set permissions on it. See Office Docs, for the user view of things.

An alternative is to have several document libraries, each one for a specific purpose (generally available or secret stuff) and the set the permissions on each library.