In a collaborative environment, it can be helpful to be able to have multiple users work on the same assets or to create copies of good quality work to serve as templates for others.   enables users to collaborate on the same flow objects or to create copies for others to use for independent work.

This section provides an overview of sharing principles, limitations, and approaches.

NOTE: You can share connections, too. See Share Connections below.

For more information on how to share a flow or send a copy of it, see  Share Flow Dialog.


Collaborative Sharing

In the collaborative approach, two or more users can work on the same flow. When a flow is shared, all flow objects are shared, including:

NOTE: Sharing of data is managed at the flow level. You cannot share individual recipes or datasets from within a flow.


NOTE: You cannot share a flow with yourself.

All collaborators have access to the above objects, as long as they have permissions to the underlying sources. See below.

Example collaboration methods:

Roles

RoleDescription
Owner

Creator or designated owner of the flow. Owners have full permissions.

NOTE: There can be only one owner of a flow.


CollaboratorA user with whom a flow has been shared. Collaborators have a reduced set of permissions. See below.

Permissions

Underlying datasets: Sharing a flow does not change the permissions to the underlying data. If a user with whom a flow has been shared does not have access to the data on the datastore, the user cannot work with the flow's datasets.



Sharing samples: A flow's samples are not necessarily available to all users who have been shared the flow. In some cases, if a user who has been shared a flow does not have access to a recipe's sample, the user may have to collect a separate sample to view data or edit the recipe associated with the sample. To enable universal access to shared samples, you can use either of the following permissions schemes:

  1. The default output directories for any user can be accessed by any other user. This configuration must be managed in the base storage layer.
  2. When the sample is executed, an individual user must set his or her default output directory to a location that shared users of the flow can access.

When flows are shared with you, you can access them through the Shared with Me tab in the Flows page. In addition to accessing the flow based on your set of permissions, you can also:





See Flows Page.

Collaborator permissions:

Collaborator limitations:

Collaborators do not have the following permissions on a flow shared with them:

Editing Recipes

Owners and collaborators have the same permissions to edit recipes in the shared flow. In the Edit History, edits appear under the usernames of the individual contributors.

NOTE : Multiple editors cannot make changes to the same recipe at the same time.


NOTE: When a column is hidden from a dataset, it is hidden for all users.


Tip: You can review the history of changes to a recipe through the Edit History for a recipe. See Recipe Panel.

Removing access

You can remove sharing access to a flow. When a flow is no longer shared, the collaborator:

NOTE: If a dataset from a shared flow is referenced in another flow, when sharing access is removed from the flow, the referenced dataset is still available in the other flow.


NOTE: If a flow is unshared with you, you cannot see or access the datasources for any jobs that you have already run on the flow. You can still access the job results. This is a known issue.

Sending Copies

As needed, you can send a copy of a flow to one or more users. Each user with whom you send the flow has an independent version of the flow. Changes made in copies of flows do not affect the original flow, and vice-versa. Examples:

When a flow is sent to another user, all objects in the flow are copied and passed to the other user, including:


Limitations


NOTE: When a flow containing parameters is copied, any changes to parameter values in the copied flow also affect parameters in the original flow. As a workaround, you can export and import the flow into the same system and replace the datasets in the imported flow. This is a known issue.

Permissions

The users to whom copies are sent are owners of those copies. They have full permissions over the flow and its datasets. 

The new owner of the copied flow has full editing permissions on the recipes. They can share or send copies of the flow to other users as needed.

Share Connections

When initially created, a connection is private. It is accessible only to the user who created. it.

Through the Connections page, you can share your connections with other platform users:

Sharing credentials:

When shared, private connections can be shared with or without credentials. If credentials are not shared, new users of the shared connection must supply their own credentials. Those credentials must be permitted access if access to any datasets previously imported through the connection is required.

NOTE: Password values for credentials are always masked in the user interface.


NOTE: For SSO connections, credentials are never shared. Instead, the Kerberos principal of the user with whom the connection is shared is used to connect. That principal must have the appropriate permissions to access the data.

For more information, see Connections Page.

Sharing connections through flows:

When a flow is shared, any connections associated with it are automatically shared to the specified users. If the connection is configured to do so, credentials are included, so that the new users can immediately begin using the flow.

For more information, see Flow View Page.