After you've created a few properties and boards, you can share them with other users. You can share an object with another user or an entire role, according to your role definition.
How sharing works
When you first create a board, property, flow, or measure, only you and your admin can see it. Other users cannot view your object until you share it with them or with your role.
For example, User A and User B are on the product marketing team. Users A and B are both members of the same Scuba role, called "product marketing". User A creates an object. User B does not see User A's object until User A shares it either with User B or with the product marketing role.
Note that admins can see all objects, even ones that you haven't shared to anyone.
Share a board or user-created object
You can share a board, property, flow, or measure that you have created. You can also share an object that another user has created, up to the limit of your permission on that object. That is, if you have write access to an object, you can grant read or write access. But if you only have read access, you can only grant read access.
You can also remove access that's been granted to an object, up to the limit of your permission on that object. This way, you can correct a mistake you made in sharing the object.
You can share with an individual user or with every user in a role. The roles you can share with are determined by your Scuba role definition. To learn about roles and capabilities in Scuba, see Manage users and roles with RBAC.
Copying a property or board's URL and sending it to your recipient, instead of using the share button as described here, might not allow your recipient to view your results.
To share a board:
- In the Scuba UI, navigate to the board you want to share.
- Click the Share Board icon.
- Click the plus sign to add a new row to the share list.
- Click the three dots to view a list of users and roles available for you to share with. Scroll down to see the roles.
- Select a user or role to share with.
- Select read, query, or write access.
- To share the board but not have it populate the other user's board lists, grant query access.
- To allow the other user to share the board with additional users, grant read or write access.
- Click Save. Your board is now visible to the user or users you shared it with.
To share a property, flow, or measure:
- Using the left menu, navigate to the object you want to share.
For example, to share an actor property, click Data, then Actor properties, and then in the list click the name of the property.
- In the left pane, click the Share tab.
- Click the plus sign to select a role or individual user to share with.
- Select read, query, or full write access.
- To share the object but not have it populate the other user's board lists, grant query access.
- To allow the other user to share the object with additional users, grant read or write access.
- Click Save. Your object is now visible to the user or users you shared it with.
How access to an object is inherited
If a user is granted permission for an object (a board, property, flow, or measure), they get explicit permission for that object, and they automatically get implicit query permission for all dependents of that object, within the limits of their dataset access.
For example, say you are granted read access to a board made up of several charts. You are granted explicit permission to view the board, and the board appears in your boards list. You are also granted implicit permission to the charts, queries, and other objects that are used in the board, but these objects do not appear in your object lists and typeaheads.
To the consumer of a board or property, implicit and explicit permissions look the same — you can view any object that you have either implicit or explicit permission to view. But when you inspect an object in the Scuba UI, you see only the users and roles with explicit permissions to view the object. The UI does not tell you who has implicit permissions on an object.
For security reasons, when you share a query from Explore or an app using the URL (in contrast to the Share button that you can use for an property or board), the user does not automatically get permissions to the query, unless the recipient has permissions on each of the top-level objects referenced in the query. This can be accomplished by any of the following:
- The cluster admin configuring all users to have query permission on all new objects. See Manage users and roles with RBAC in the Admin Guide.
- When you share a query, you would have to grant permission for every top-level object in the query before sharing the query. See Share a board or user-created object above.
Without one of these, the recipient sees an error message.
About adding and removing objects on boards
Query permission is also inherited on objects that are created privately and then pinned to shared boards. For example, say you create a query but don't explicitly grant User B access to the query. Then you pin your query to a board that has already been shared with User B. Once you pin the query to the board, User B can view the query and its dependent objects. Whether the recipient is granted read or write access on the board, they are granted query permission on the dependent objects.
If you remove a query from a board, the implicit permissions on its dependent objects are removed. Users with implicit permission to view that dependent object can no longer view it, unless they have also been explicitly granted permission to that object.
Understand inherited permissions on an object
When you're working with an object such as a board, measure actor, action, flow, or property, you can see who has read access to it.
In Explore or Apps > Flows, in the query or flow definition, click the name of an object you wish to inspect. The third column from the left tells you who created the object and who can view it.
To inspect the permissions on an object:
- On the left hand menu, click Data, then click the tab for the type of property you wish to inspect.
- In the list of properties, find your property and click its row.
- In the left panel, click the Share tab.
- A list displays of the users and roles with read, write, or query permission on this object. You can view or modify permissions on this pane.
About naming objects
One user cannot create two objects with the same name, but two users can give their objects the same name.
For example, User A can create a board called "Weekly Report" and so can User B. If User A shares her Weekly Report with User B, User B will have access to two boards called "Weekly Report".
User B can distinguish between the two reports by navigating to the object and inspecting the Owner column.
Share a query from Explore or an app
You can copy a query URL that allows another user to re-run that specific query. You can share the URL using email or another communication service, or bookmark the query to save your query definition and re-run the query later.
The user with which you want to share a query must have an account on your Scuba instance, access to your dataset, and permission to view all of the objects used in your query. In addition, your admin can hide the query share button. To ensure that sharing is successful, pin your query to a board and follow the steps in Share a board or user-created object above.
To share a query without pinning it to a board, do the following:
- From Explore or an app, click Share in the top right corner of the window.
- From the URL dialog, click Copy. The URL is copied to the clipboard.
- Share this URL with your recipient by pasting it into an email or other communication channel.
The query from a shared URL reflects data from when query was originally run. To view updated data, your recipient can click Go to re-run the query.
Troubleshoot sharing issues
The following table helps you troubleshoot sharing issues.
|I can't see someone else's object. I get an error that the property does not exist, or a similar message.||
Ask them to share the object with you or with your role.
|I can't see someone else's query.||Ask them to share the top-level dependent objects with your or your role, or ask them to pin the query to a board and share the board.|
|I see a blank panel on a shared board.||The panel might contain data from a dataset that you do not have access to.|
|My object doesn't look right.||Check the owner column in the explorer table. Is it yours, or is it someone else's with the same name?|
|I can't share an object.||Verify that your role can share with the role you want to share to. Your Scuba admin can check this in the definition for your role. See Manage users and roles with RBAC.|