Skip to content

Commit

Permalink
Merge pull request #730 from RizaFarheen/main
Browse files Browse the repository at this point in the history
Tags Update
  • Loading branch information
nhandt2021 authored Jul 24, 2024
2 parents d1557f9 + 7a698f3 commit d3cad33
Show file tree
Hide file tree
Showing 8 changed files with 67 additions and 40 deletions.
2 changes: 1 addition & 1 deletion codeblocks/versions.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"conductorJarVersion":"1.1.22"}
{"conductorJarVersion":"12.0.9"}
105 changes: 66 additions & 39 deletions docs/access-control-and-security/tags.md
Original file line number Diff line number Diff line change
@@ -1,78 +1,105 @@
# Managing Tags in Conductor

The tags are metadata applied to tasks, workflows, schedulers, or secrets in Conductor. The tags in Conductor are of the format **key:value**. Tags can be utilized in situations where you can easily share permissions with a group of users.
Tags are metadata in Conductor, formatted as `key:value`, that can be applied to various entities like tasks, workflows, schedulers, secrets, webhooks, AI prompts, environment variables, integrations, and applications. Tags help in bulk permission sharing by associating permissions with specific tags.

You can either add tags directly to individual workflows/tasks/secrets/schedulers. Or you can also add tags to user groups.
## Adding Tags to Entities

## Adding Tags to Workflow​s​
You can add or remove tags for various entities using similar steps. Follow the instructions below based on the type of entity you wish to tag:

To add a tag to a workflow,
1. From the left menu, navigate to **Definitions > Workflow** and find the workflow you wish to tag.
2. In the **Actions** column, click the tag icon.
* Workflows
* Tasks
* Schedulers
* Secrets
* Webhooks
* AI Prompts
* Environment Variables

Steps to add a tag:

1. Navigate to **Definitions** from the left menu on your Orkes Conductor cluster.
2. Select **Workflow / Task / Scheduler / Secrets / Webhook / AI prompts / Environment Variables** depending on the entity you want to tag.
3. Locate the specific entity you wish to tag.
4. In the **Actions** column, click the tag icon.

<p align="center"><img src="/content/img/adding-tags-to-workflow.png" alt="Adding a tag to an already created workflow" width="90%" height="auto"></img></p>

This will open a pop-up window that allows you to add a new tag. Type a tag name in the format **key:value** and press enter to create new tags. You may also remove tags from the same window by clicking the "X" next to the tag you wish to delete.
5. This opens a pop-up window where you can add a new tag. Enter a tag in the `key:value` format and press enter to create it. To remove a tag, click the "x" next to the tag.

<p align="center"><img src="/content/img/editing-tags-in-conductor.png" alt="Editing a tag" width="60%" height="auto"></img></p>

## Adding Tags to Task​s​
## Adding Tags to Integrations

To add a tag to an integration:

To add a tag to a task,
1. From the left menu, navigate to the **Definitions > Task** and find the task you wish to tag.
2. In the **Actions** column, click the tag icon.
1. Navigate to **Integrations** from the left menu on your Orkes Conductor cluster.
2. Locate the specific integration you wish to tag.
3. In the **Actions** column, click the tag icon.

<p align="center"><img src="/content/img/adding-tag-to-task.png" alt="Adding a tag to an already created task" width="90%" height="auto"></img></p>
<p align="center"><img src="/content/img/adding-tags-integrations.png" alt="Adding tags to integrations" width="90%" height="auto"></img></p>

This will open a pop-up window that allows you to add a new tag. Type a tag name in the format **key:value** and press enter to create new tags. You may also remove tags from the same window by clicking the "X" next to the tag you wish to delete.
4. This opens a pop-up window where you can add a new tag. Enter a tag in the `key:value` format and press enter to create it. To remove a tag, click the "x" next to the tag.

## Adding Tags to Scheduler​
<p align="center"><img src="/content/img/tag-format-integrations.png" alt="Adding/Editing tags in integrations" width="70%" height="auto"></img></p>

To add a tag to a scheduler,
1. From the left menu, navigate to **Definitions > Scheduler** and find the scheduler you wish to tag.
2. In the **Actions** column, click the tag icon.
## Adding Tags to Applications

This will open a pop-up window that allows you to add a new tag. Type a tag name in the format **key:value** and press enter to create new tags. You may also remove tags from the same window by clicking the "X" next to the tag you wish to delete.
To add a tag to an application:

## Adding Tags to Secrets​
1. Navigate to **Access Control > Applications** from the left menu on your Orkes Conductor cluster.
2. Locate the specific application you wish to tag.
3. In the **Actions** column, click the tag icon.

To add a tag to a secret,
1. From the left menu, navigate to **Definitions > Secrets** and find the secret you wish to tag.
2. In the **Actions** column, click the tag icon.
<p align="center"><img src="/content/img/adding-tags-application.png" alt="Adding tags to applications" width="90%" height="auto"></img></p>

This will open a pop-up window that allows you to add a new tag. Type a tag name in the format **key:value** and press enter to create new tags. You may also remove tags from the same window by clicking the "X" next to the tag you wish to delete.
4. This opens a pop-up window where you can add a new tag. Enter a tag in the `key:value` format and press enter to create it. To remove a tag, click the "x" next to the tag.

<p align="center"><img src="/content/img/tag-format-applications.png" alt="Adding/Editing tags in applications" width="70%" height="auto"></img></p>

## Using Tags for Permission Sharing in Bulk​

The above steps mention adding tags to individual tasks/workflows/schedulers/secrets. However, you can also add tags to a user group/application that helps in sharing permissions in bulk.
In addition to tagging individual entities, you can use tags for bulk permission sharing by assigning them to user groups or applications.

### Using User Groups​

Suppose you have a group of users from the accounts team and want to share the workflow execution permission for all users in the group.
To grant permissions to a group of users:

1. Tag the Entities

Ensure that the relevant entities are tagged with a specific tag, for example `team:accounts`.

2. Update Group Permissions

To add permissions to the group,
1. Ensure that the workflow is tagged with the tag **team:accounts**. (If permission is to be shared for tasks/secrets, you need to add the tags to the corresponding items.)
2. Navigate to **Access Control > Groups** and click the edit icon near your group name.
3. From the **Permissions** section, click **+Add Permission**.
4. Click on the **Tag** section, choose **team:accounts** tag, and provide EXECUTE permission. You must also provide READ permission to list the workflows/tasks/schedulers/secrets in your Conductor console.
5. Clicking **Add Permission** adds the tag to the Group.

1. Navigate to **Access Control > Groups** and click the edit icon next to the group name.
2. In the **Permissions** section, click **+Add Permission**.
3. Choose the **Tag** section, select the required tag, and assign the necessary permissions. Typically, you’ll need to provide **_EXECUTE_** permission for execution rights and **_READ_** permission to list the entities.
4. Clicking **Add Permission** adds the tags to the group.
5. Click on the **>** to view all the entities tagged.


<p align="center"><img src="/content/img/adding-tags-to-a-user-group-in-conductor.png" alt="Adding tags to a user group" width="100%" height="auto"></img></p>

This enables all the group members to have execute access to the workflow tagged with **team:accounts**. This would also provide execute access to all tasks/secrets/scheduler flagged with this tag.
This configuration grants all group members execute and read access to the tagged entities simplifying permission management for large teams.

### Using Applications

You can also allow the applications created to have explicit permissions over the workflows/tasks/secrets/schedulers tagged with the required tags.
To grant permissions to an application:

1. Tag the Entities

Ensure that the relevant entities are tagged with a specific tag, for example `team:accounts`.

2. Update Group Permissions

Suppose you want to provide access to the tag “**team:accounts**” for your application;
To add permissions to an application,

1. Ensure that the workflow/task/secret/scheduler is tagged with the tag **team:accounts**.
2. Then, navigate to **Access Control > Applications** and click the edit icon near your app name.
3. From the **Workflow and Task Permissions** section, click **+Add Permission**.
4. Click on the **Tag** section, choose **team:accounts** tag, and provide the required permission.
5. Clicking **Add Permission** adds the tag to the application.
1. Navigate to **Access Control > Applications** and click the edit icon next to the application name.
2. In the **Permissions** section, click **+Add Permission**.
3. Choose the **Tag** section, select the required tag, and assign the necessary permissions. Typically, you’ll need to provide **_EXECUTE_** permission for execution rights and **_READ_** permission to list the entities.
4. Clicking **Add Permission** adds the tags to the application.
5. Click on the **>** to view all the entities tagged.

<p align="center"><img src="/content/img/adding-tags-to-application-in-orkes-conductor.png" alt="Adding tags to application in Conductor" width="100%" height="auto"></img></p>

This enables the application to have execute access to all the workflows/tasks/secrets/schedulers flagged with the “**team:accounts**” tag.
This configuration grants the application execute and read access to the tagged entities simplifying permission management for large teams.
Binary file added static/img/adding-tags-application.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/adding-tags-integrations.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified static/img/adding-tags-to-a-user-group-in-conductor.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified static/img/adding-tags-to-application-in-orkes-conductor.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/tag-format-applications.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/tag-format-integrations.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit d3cad33

Please sign in to comment.