As the owner of a hosted feature layer or a portal administrator, you need to decide who has access to your feature layer data. You can control that through a combination of hosted feature layer views, editing settings, and sharing properties.
To determine whether you need to create hosted feature layer views, with whom you should share your hosted feature layers and hosted feature layer views, and what editing properties to set, consider the following questions.
Who needs to edit?
The owner of the hosted feature layer and the organization administrator always have the option to edit the layer in Map Viewer, even if editing isn't enabled on the layer. This is useful if the layer is intended for viewing purposes but requires occasional edits. It is also useful if you're part of a small organization in which the publisher and editor are the same person. Basically, if you don't need to open up the layer to editing by everyone, don't.
If you do need other members of your organization to edit the hosted feature layer, though, enable editing on the layer and share it with the appropriate set of people. Be aware that when you share the layer with a group or the organization, only those members who are assigned a role that includes editing privileges will be able to edit the feature layer. When you share the feature layer with the public, anyone, even people not signed in to your organization, can edit the layer.
Does everyone need to make the same types of edits?
You decide what type of editing is allowed when you enable edits on your hosted feature layer. There are several combinations of editing options you can enable. For example, you can configure the layer so that editors can add, update, and delete features or restrict editing so that editors can only add features or only update attributes.
If everyone who will edit the layer will be doing the same types of edits, all you need is a single hosted feature layer with one setting. As mentioned in the previous section, you still have full editing control on the layer no matter what you enable for others.
If you want different people to perform different types of edit operations, though, a single hosted feature layer isn't enough. To meet this need, create a hosted feature layer view from the hosted feature layer, enable different editing options on the view, and share the view with the appropriate set of people. You can create up to 20 views per hosted feature layer to meet different editing requirements.
If most of your editors will perform the same types of edits but you need several people to have full editing control (add, update, and delete), the organization administrator can create a special type of group whose members have full editing control of all hosted feature layers. Although this group option still exists, it is part of a workflow that has effectively been replaced by creating a view. Use of a view is preferable, as it provides more control over who can edit a specific layer, whereas members of groups with full editing capabilities have full editing privileges on all hosted feature layers to which they have access.
What if you want some people to edit but not others?
Similar to when different editors need different levels of editing access, you can create hosted feature layer views to meet this need. You can enable editing on the hosted feature layer, share it with only the group or groups whose members need to edit the layer. Next, create a hosted feature layer view from the editable hosted feature layer but disable editing for the view. Share the view with the sets of people who need read-only access to the data. This is useful if you want the public or your entire organization to view the features but only need a few organization members to edit it.
Can you keep track of who edits your data?
You can enable tracking on your hosted feature layers. This adds fields to your layer to record the login of the person who creates a feature and when he or she created it, as well as fields to record who last edited a feature or its attributes and when they edited it.
Enabling tracking allows you further control over the types of edits people can make to the layer. For example, you can restrict editors to only editing the features they add to the layer or only allow editors to see the features they add.
If you enable editor tracking on a hosted feature layer that is shared with the public, all anonymous users (those who edit without signing in to the organization) are tracked with the same user name. That means all anonymous users would have the same editing privileges on all other anonymous user's features.
Do you want to restrict editing to particular features or attributes?
For example, if you have a single hosted feature layer that contains buildings in your city, you might need to create views with the following definitions:
- Create one view for members of the public who want to look up information about a property. Configure the view so only those fields that store information that the public is allowed to see are available. Do not enable editing on this view and share the view with everyone (public).
- Create another view to be used by city staff who inspect or issue permits for commercial properties. Set a definition on the view that exposes only those building features that are defined as commercial and share the view with a group composed of the appropriate city staff.
- Create another view to be used by city staff who inspect or issue permits for residential properties. Set a definition on the view that exposes only those building features that are defined as residential and share the view with a group composed of the appropriate city staff.
Will some editing take place when Internet connectivity isn't available?
If you have field workers who need to edit data outside the office, where they likely cannot connect to your organization, you can enable your hosted feature layer for synchronization (offline editing).
To use this layer in Collector for ArcGIS or custom apps built with ArcGIS Runtime SDK, create a map that is enabled for offline use, add your sync-enabled hosted feature layer to it, and add other layers your offline editors will need in the field for reference.