Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

There is a Task List, and I need to hide specific columns from specific users. When Administrator login, he sees column "Budget, rub", and when visitors log in they should not see this column.

How can this be accomplished in SharePoint Online?

enter image description here

share|improve this question

2 Answers 2

If the information you're trying to hide is really sensitive, "hiding" methods such as personalized view or XSL transformation or audiences or custom webparts or jquery are NOT safe.

If you store data in a list, I can fetch all the data from your list with 5 lines of javascript via JSOM.

Thus the only safe method is to use SharePoint permissions.

The idea is to create additional lists and set up appropriate permissions for them. For example, in your case it would be a list with just one column:

 ________________
|  Budget, rub   |
|----------------|

Setup the permissions for this list, and then add a lookup column to the original list that points to the Budget column. SharePoint will respect permissions and users will not be able to see the contents of the Budget column, if they don't have appropriate permissions.

I realize that this method is not very convenient, as you have to manage several lists instead of one, but trust me, it is the only safe method if you store your data in SharePoint list. So if you care for safety, this is what you choose.

share|improve this answer
  1. You can create a public view that does not has the Budget rub column.
  2. Then restrict creating views for the users. You can do this through site permissions.
  3. Thereafter as Admin, create a personal view with this column.

Let me know if you need further help.

share|improve this answer
    
Thanks for the help, but I need to do different viewing options for different groups of the table. User group "User Group 1" will be found under some column, and for the "User Group 2" the other columns. –  Иван Баранов Aug 25 at 9:28
    
If your requirement is to display two views for two groups, then add a new page, create two list view webpars. Define view for both webparts and set target audience on each. Then hide all the places where the users have access to list from the backend. –  Malin De Silva Aug 25 at 9:32

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.