Managing Applications
An application represents an application that interacts with a Conductor cluster via APIs or SDKs. The application layer in Conductor provides application-based access to resources in your cluster.
Each application can also have one or more access key/secret pairs, which are used to grant access to Conductor SDK and API. Learn more about authentication in Authentication and Access Keys.
Application roles
By default, all applications can manage workflow and task executions if they have access to the required resources. For example, an application can execute someWorkflow
long as Execute permission is granted for those resources. Likewise, an application can view workflow executions if Read permission is granted.
Application roles grant additional access on top of this default behavior and should be selected only if your application is used for another purpose besides managing workflow executions. These additional application roles should be selected based on your application requirements. There are two categories of application roles available:
- Application Roles
- Unrestricted Roles
Application roles can be added by any user with access to applications. General application roles include:
- Worker—Poll and execute tasks that it has Execute permissions for. This role should be granted to a task worker application that is responsible for polling and executing a task.
- Metadata API—Create and manage workflow and task metadata. This role should be granted to an application that is responsible for retrieving and managing workflow and task definitions, such as for testing or CI/CD integration purposes.
- Application API—Create and manage applications. This role should be granted to an application that is responsible for managing other applications in the cluster.
Unrestricted roles can only be added by an Admin. Unrestricted roles include:
- Unrestricted Worker—Poll, execute updates, maintain logs, and handle any task without any constraints
- Metadata Manager—Create, update, delete, and grant permissions to any workflow or task definition in the cluster.
- Workflow Manager—Manage the lifecycle of workflows within the system. Start, pause, resume, rerun, and delete any workflow execution.
- Application Manager—Manage applications in the cluster, such as creating, modifying, and deleting applications.
- Admin