Answers.Body: <p>This will allow to view/edit a custom data field set for every contact the user has view/edit permissions.</p>
  
  <p>Despite the option named <code>Edit</code> there is currently no difference to <code>View</code>, as descibed in the note. Whether you can actually edit it depends on the ability to edit the contact.</p>
  
  <p>There is a CMS-based permission <code>CiviCRM: edit my contact</code> to edit your own contact.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-01-24T21:04:15.360Z
Answers.Text: This is the key I needed, thank you!  So as long as "edit my contact" is enabled and not "edit all contacts," this ACL will only allow them to edit data associated with their own contact record.  Makes perfect sense.  Have a checkmark.
Answers.UserDisplayName: Dave
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-01-25T02:39:07.880Z
Answers.Text: so you are using both the CMS permission and the Profile ACL?
Answers.UserDisplayName: petednz - fuzion
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-01-24T14:41:07.873Z
Answers.LastActivityDate: 2019-01-24T14:41:07.873Z
Answers.UserDisplayName: Thomas Schüttler
Body: <p>I'm a little confused on how custom data ACLs work - specifically, when I give a role access to edit a set of custom data fields that are associated with a contact, like so:</p>
  
  <p><a href="https://i.sstatic.net/v4kQJ.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/v4kQJ.png" alt="ACL"></a></p>
  
  <p>Does this allow that role to edit the custom data belonging to <em>any</em> contact or just <em>their own</em> contact?</p>
  
  <p>If it would allow that role to edit custom data belonging to <em>any</em> contact, how can I lock it down so they can only edit their own data?</p>
  
  <p>My use case is this: I want users to be able to log into the site, update their own information, and only their their own.  Nobody else's.  Their information is in a profile and custom fields.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-01-23T20:10:19.093Z
Comments.Text: Can you say a bit more about your use case?  Should contacts other than their own contact be editable at all?  If it's just the custom data you want to lock down you'll need some custom code.  If it's acceptable to lock down the contacts generally you're likely in luck.
Comments.UserDisplayName: Jon G - Megaphone Tech
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-01-24T13:58:32.127Z
Comments.Text: ACL's are complex - it's worth setting up a test and verifying that the behaviour you observe is what you what.
Comments.UserDisplayName: Aidan
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-01-24T19:24:14.380Z
Comments.Text: agree with Jon, it helps if you expain what outcome you are after as you may be barking up the wrong tree eg compared to using a checksum to direct folk to a Profile edit screen
Comments.UserDisplayName: petednz - fuzion
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-01-24T21:03:18.220Z
Comments.Text: Updated with my use case.  Sorry for the lack of clarity!
Comments.UserDisplayName: Dave
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-01-24T21:05:39.623Z
Comments.Text: CiviCRM has two permission models - there are ACLs and CMS permissions.  You don't need ACLs to accomplish what you're trying to accomplish.  Use Thomas' CMS suggestion and you should be done.
Comments.UserDisplayName: Jon G - Megaphone Tech
Tags: <acl>
Title: Custom Data ACLs
ThreadText: # Custom Data ACLs
  
  (Asked by: username_0 on 2019-01-23)
  
  I'm a little confused on how custom data ACLs work - specifically, when I give a role access to edit a set of custom data fields that are associated with a contact, like so:
  
  [![ACL](https://i.sstatic.net/v4kQJ.png)](https://i.sstatic.net/v4kQJ.png)
  
  Does this allow that role to edit the custom data belonging to *any* contact or just *their own* contact?
  
  If it would allow that role to edit custom data belonging to *any* contact, how can I lock it down so they can only edit their own data?
  
  My use case is this: I want users to be able to log into the site, update their own information, and only their their own. Nobody else's. Their information is in a profile and custom fields.
  
  **Tags:** acl
  
  > **Comments:**
  > **username_1**: Can you say a bit more about your use case?  Should contacts other than their own contact be editable at all?  If it's just the custom data you want to lock down you'll need some custom code.  If it's acceptable to lock down the contacts generally you're likely in luck.  
  > **username_2**: ACL's are complex - it's worth setting up a test and verifying that the behaviour you observe is what you what.  
  > **username_3**: agree with Jon, it helps if you expain what outcome you are after as you may be barking up the wrong tree eg compared to using a checksum to direct folk to a Profile edit screen  
  > **username_0**: Updated with my use case.  Sorry for the lack of clarity!  
  > **username_1**: CiviCRM has two permission models - there are ACLs and CMS permissions.  You don't need ACLs to accomplish what you're trying to accomplish.  Use Thomas' CMS suggestion and you should be done.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_4 on 2019-01-24. Score: 4 | Accepted answer
  
  This will allow to view/edit a custom data field set for every contact the user has view/edit permissions.
  
  Despite the option named `Edit` there is currently no difference to `View`, as descibed in the note. Whether you can actually edit it depends on the ability to edit the contact.
  
  There is a CMS-based permission `CiviCRM: edit my contact` to edit your own contact.
  
  > **Comments:**
  > **username_0**: This is the key I needed, thank you!  So as long as "edit my contact" is enabled and not "edit all contacts," this ACL will only allow them to edit data associated with their own contact record.  Makes perfect sense.  Have a checkmark.  
  > **username_3**: so you are using both the CMS permission and the Profile ACL?  
  
  ---
  
  