Best strucutre for Sharepoint site - sharepoint

I want to distribute info on sharepoint to differenct groups A,B, and C and I want only the content for group A to be seen by group A, only the content for gorup B to be seen by gorup B, and only the content for gorup c to be seen by gorup C.
What is the best way to structure a Sharepoint team site?
Currently I have
team/sites/groupA
team/sites/groupB
team/sites/groupC
and I was going to set up 3 sharepoint groups for A,B and C and permission the three sites to the 3 sharepoint groups.
But can/should it be set up with only 1 site like:
team/sites/MainSite
and then all the permissions managed using inherited permissions etc...
I am a sharepoint beginner and don't know much about the inheritied permissions or heirarchy of how a single site would work. Any thougths on which way is better? I would like to make the site or sites as easy to maintain as possible.
Thank you!

The way you have desgined it as site collection is best approach. the best approach is if you need fine grained permission for a site create a site collection.
Although regarding your other question of having main site and then having sub-site it would not be possible using inheriting permission, you would have to use fine grained permission if you want to give diffrent permission for each subsite.
if the gr
although you could have done it by stop inheriting permission but it should be only done when you know the groups a ,b & c would be having small number of users

Related

The items to be shown on the Sharepoint list will depend on the user

Can you please help me on how will I able to filter the items of my list in Sharepoint depending on the user logged. The items that need to be shown will also depend to the team where the user belongs.
Thanks in advance!
So the image below shown is my list.
For example, User 1 and User 2 both have Full Control permission on my list. But User 1 should only see entries for DETE team. And User 2 should only see entries for Service Control Team.
Showing which items to be shown based on the current user can be done using out of the box SharePoint permission features.
The simplest and short answer is to set unique permissions on each item in your list to specific users or groups by breaking permission inheritance for the SharePoint list. Once the inheritance is broken, you can then specify your unique custom permissions on each item in your list. Then SharePoint will only show what is available for the user to see. If you are not familiar with security inheritance in SharePoint, then I suggest reading up on this topic as this is a foundation of SharePoint security.
To do this, use the "Shared With" -> "Advanced" options from the ellipsis menu on that item, then you can break permission inheritance on that item. (If you don't see the tool ribbon, then change the "List Experience" setting to classic via list settings -> advance settings -> list experience)
Then break the permission inheritance on the item:
Then you can grant permission to specific users or groups:
This can work okay for a small list but is a management nightmare for a large list.
One alternative is to use "Folders" and set the appropriate permissions on there instead. Then you can add/remove items from the folder for easier management to control which users can see what. There are pros and cons with this approach but this method has worked for me. What is nice is that you can display the items with or without folders using the Folder display options when creating a custom view.
Another solution is to create a custom workflow that will apply the proper item security permissions for you when an item is created in the list. This is good to automatically set the permissions for you without doing any work but does add maintenance duties if permissions needs changing such as new users, remove users or modifying users.
Setting up the proper security groups and users should give you the flexibility needed for your security requirements. It is always good practice to use groups when possible.

Read permission for the entire intranet site

I would like to give only read permission for a user to entire intranet site. The user must be able to read all the list and libraries in all the sites and subsites. I saw posts related to giving permission for a specific list or library but I didn't see any post related to giving read permission for the entire intranet site. I'm using SharePoint 2013.
Thanks
If you mean Read access to everything in a single site collection, then that is hard to give generic advice to because assorted list, libraries and subwebs can have broken the permission inheritance such that it would be impossible for an outsider to tell you which groups this person needs to be a member of.
Now if you mean you want a user to have Read access to all site collections within a web application, then that is absolutely something that can be accomplished and it is very easy too. That is done via something called: Policy for Web Applications - https://technet.microsoft.com/en-us/library/ff608071.aspx

Restricting Views of users on Sharepoint lists

I am developing a sharepoint 2010 project.
I want to restrict users view on lists based on their identity. (e.g. the branch of organization they work in, but in fact the ristrictions can be more complicated).
What solutions do you recommend?
With out of the box features this is not possible. You can go to great lengths to remove the list's view selectors and other navigational elements that let people cruise around a the schema and metadata for a list but it is not a security mechanism.
If a user has read permissions to an item, they'll have read access to all the fields of that item.
There is an outside chance that it you disabled all RPC mechanisms, SOAP, RESTful web services, Client Object Model and the office clients that you might be able to claim this as a security mechanism. If you don't there will always be a way around your "security" scheme.
This feature can't be implemented by SharePoint by now and I think neither for the next version
You can use a third part tool to achieve it, such as BoostSolutions' Column/View Permission or LightningTools' DeliverPoint
BTW, I work for BoostSolutions and I mentioned our own product because it works for your issue. Hope it helps :)
create sharepoint groups based upon your requirement or diffrent type of user base and accordingly give them rights may be item level or on complete list
and while doing these things just go through the following posts
http://blogs.gartner.com/neil_macdonald/2009/02/25/sharepoint-security-best-practices/
http://weblogs.asp.net/erobillard/archive/2008/09/11/sharepoint-security-hard-limits-and-recommended-practices.aspx
Not 100% sure on SharePoint 2010, but definitley for SharePoint 2007, there is not a way to do this, especially if the views are corresponding to security requirements on the columns users are able to see.
One way to work around this is have the list be not accessible by users, and then have code logic allow for access to the data creating the different "views" on the data in something like a Web Part. The downsides to this is search becomes an issue (since the data is hidden) and having multiple "views" of the data (if necessary) is also another item to work through.
I know its a very old question but posting it as it might help someone.
There is an work around to do it as described here
I find it easier, if possible, to create the view and lock it with the filters on the list settings page.
For example, I have a list of employees that includes their employee IDs. I use that list on other pages to gather data in other webparts. So I filter the employee list to [ME]. So the data is available to the page needing it to filter others and they cannot see anything else.
Now, what about the person who needs to manage that page? I create a view, call it HR. That view can see everything. Then I export that webpart with that list view on it through the designer. I then delete the HR view from the employee list.
This leaves no way for anyone to switch views and see everything again. I create a webpart page for the person who manages it, and I upload that webpart and set the view of the webpart to HR. In the end, I have a page that I lock down instead of trying to lock down views or list permissions separately.
Would you be able to have two lists that are joined. One that all users have access to and another that only certain people have access to, and then join them? Then maybe the people that don't have access to the other table it doesn't pull the information? Not sure, but I'll try that out later today.

Sharepoint permissions. Require multiple groups

I have a permission question I hope someone can help me with.
I have setup permission groups for each department in an organization, i.e. “Dept-1”, "Dept-2", etc. My plan is to put people in these groups so they correspond with the department they work for. Next I’m setting up groups that correspond to areas of work, i.e. “Area-Tech”, “Area-Manager”. What I’d like to be able to do is give access to a list where a user needs to be in both “Dept-1” and “Area-Manager” in order to view and edit items. If a user is just in “Dept-1” they shouldn’t have access.
Can this be done? Maybe there is another way. Thanks
No, you will need a 3rd group "Dept1 Area Mgrs" or something.
The permissions in SharePoint are "OR"-based, not "AND"-based.
You could try using Audiences, but remember that this is not a security feature and information will only be hidden from the users.
Is it possible to say that all users that are Area Manager have view and write permissions and all others only have view permissions?

Sharepoint - How to agregate Announcements from sub-sites onto main site

I am new to Sharepoint (WSS 3.0) and have the task of creating a company intranet. This site will have a number of sub-sites - each owned by a different department. Each of the sub-sites will have an 'Announcements' webpart on their top-level page.
What I want to do is to take the most recent announcement from each of those sub-sites and display them on the main top-level site - the idea being that anyone in the company can see at the top level what is coming up in each of the departments.
My question is, what is the best way to do this? and does any one have any links that can point me in the right direction.
Many thanks.
In case you have MOSS, you should use Content Query Web Part here is the way to do it.
You can achieve the same by using Data View Web Part.
The third option is to create a custom code to do that, but since you mentioned that you are new to SharePoint I would advise against since that might be a bit complicated and it cannot be compared to the strength of built-in web parts.
The thing you should consider here is security. If a UserA from DeptA does not have permission to read Announcements from SiteB then the thing you are building does not make much sense because information from SiteB will not be visible to this user.
Along with the Toni answer you can try the SPDataSource & SPGridView if custom code is okay.

Resources