3.5. Tool publishing and authorization

RCE components and integrated tools can be published to make them usable by other connected ("remote") RCE instances. The publishing options for each component/tool can be defined in the "Component Publishing" view. In this view, each component can be assigned to one of three basic publication levels:

Note

If the "Component Publishing" view is not visible, you can open it from the "Window > Show View" menu. If it is not listed there, choose "Other" and select them from the "RCE" category.

3.5.1. Managing authorization groups

Authorization groups can be created and managed in the "Authorization Groups" dialog, which can be opened from the "Component Publishing" view. To create a new group, click the "Create Group"-button and enter a name for the group. To provide access to this group to other users, select the group in the list and click "Export Group Key". Copy the provided key from the dialog that appears, and pass it on to the users that you would like to invite to this group.

Note

IMPORTANT: This exported group key is similar to a password. When passing it to other users, make sure to use a communication medium that unauthorized users cannot easily intercept. For example, passing the key via an encrypted chat system provided by your employer, or a Team Site that is only accessible to project members, is usually secure enough. On the other hand, sharing it by email outside of your organization is usually unsafe, and we recommend using more secure alternatives.

When the other user receives this key, they can import it into their RCE instance by using the "Import Group Key" button in their "Authorization Groups" dialog. After importing a key on an RCE instance, all tools published for that group on connected RCE instances are visible and can be used like a "public" component.

3.5.2. Publishing tools on the command console

Creating custom tool groups and publishing tools is also possible using the "auth" commands on the command line. A short reference:

  • auth create <name> - creates an authorization group

  • auth list - lists available access groups

  • auth delete <name/id> - deletes an authorization group; if the name is ambiguous (e.g. there are two groups named "groupName"), you need to add the randomly generated id behind it, separated with a colon (e.g. groupName:2716ab2d25)

  • auth export <name/id> - exports a group key in a form that can be imported by another instance via GUI or command line

  • auth import <exported key> - imports a group key exported via GUI (as described above) or via the auth export command. The group name is embedded in the exported key, and is set automatically.

  • components set-auth <component id> <permissions> - sets the permissions for a component. Possible values for "permissions" are either "local", "public", or a comma-separated list of authorization groups/ids.

  • components list-auth - shows a list of all defined authorization settings. These settings are independent of whether a matching component exists, which means that settings are kept when a component is removed and later added again.

The component ids used in this commands can be derived as follows:

  • rce/<component name> for standard RCE components, e.g. "rce/Parametric Study"

  • common/<tool name> for integrated tools of type "common" e.g. "common/ExampleTool"

  • cpacs/<tool name> for integrated tools of type "CPACS" e.g. "cpacs/CPACSExampleTool"