I have searched for the best desired method for creating a read only column in a custom data list but I couldn't find anything solid in regards to the all view. My goal is to be the only one allowed to edit the list in any view possible. My search resulted in this but I do not know if this is the best solution for what I am wanting. Is this something on a permissions level?

  • Programmatically create the view. Override functions so that if current user = your account do 1 thing else do another – user13186 Feb 21 '13 at 19:58

I think there is not the best solution. It depends on your requirements for security. If you need only hide field for edit on forms it is one way. If you want to prevent pro grammatical changes of this field, it is another way.

A can suggest following:

  • Less secure is JavaScript, just hide or disable field on client side
  • Another way to customize input forms with SharePoint Designer, you can create two forms, one for yourself with target field and custom redirection control, something like, if user is not a member of specific group, redirect to other page. Second form for others, just don't add your field on form, but you can add it to list view, so users will see the field in the list view.
  • Event receiver way, as described in discussion from your link, more secure, but less user friendly.
  • As I think, most secure and friendly way is combination of Event Receiver and JavaScript. You can make field read only field with JavaScript according to specific SharePoint group. You can detect group with ajax call SPServices and disable field only for specific users. To make your solution more secure you can write event receiver to check if everything fine on the server side.
  • The last way, but maybe the easiest way is to use third part tools, like Forms Designer or it's analogues.

I would recommend creating two lists and using a Lookup column. In List A you could have the content that you are okay with other members editing. That list would then look up to List B with the column of information that you would grant Read too only.

Unfortunately permissions in SharePoint are not so granular. Using JavaScript is not secure in that you are only masking things but not resolving the fact you need it to be Read only (enforced). Even doing some trickery with Forms does not actually enforce the permissions if someone decides to send a Web Service call for example to update the List Item.

Truly the most secure way to do this is via the Lookups and using SharePoint's built-in security.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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