Skip to content

Commit

Permalink
document auth best practices
Browse files Browse the repository at this point in the history
  • Loading branch information
grayson-cobalt committed Jul 3, 2024
1 parent 6066736 commit 22cd2e7
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 13 deletions.
29 changes: 22 additions & 7 deletions content/en/Integrations/IntegrationBuilder/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,9 @@ The Integration Builder is currently in Open Beta.

## Overview

The Cobalt Integration Builder is a no-code automation platform which enables customers to create and manage custom integrations (using a library of available connectors) and orchestrate security data workflows directly from the Cobalt platform.
The Cobalt Integration Builder is a no-code automation platform which enables customers to create and manage custom
integrations (using a library of available connectors) and orchestrate security
data workflows directly from the Cobalt platform.

## Video Walkthrough

Expand All @@ -19,13 +21,20 @@ https://drive.google.com/file/d/18gcm1P0HXVz6jVdTk4cKGb1oQ0Tiqh1J/view?usp=shari

## How it Works

The Integration Builder provides a marketplace of available connectors for common business and security applications. Each connector provides a set of triggers and actions, which can be used to perform a set of data functions when an event occurs in the Cobalt platform or external system. Once a customer sets up connections for their DevSecOps applications and tools, they select from a library of pre-built recipes, or create their own recipes, using the triggers and actions enabled by the Cobalt connector and (one or more) other services to construct a workflow between the systems.
The Integration Builder provides a marketplace of available connectors for common business and security applications.
Each connector provides a set of triggers and actions, which can be used to perform a set of data functions when an
event occurs in the Cobalt platform or external system.
Once a customer sets up connections for their DevSecOps applications and tools, they select from a library of
pre-built recipes, or create their own recipes, using the triggers and actions enabled by the Cobalt connector
and (one or more) other services to construct a workflow between the systems.

Integration Builder workflows are comprised of the following elements:

### Trigger

Triggers determine what event to listen to execute the actions described in a recipe. Triggers can be set off in real time when an event occurs in the Cobalt platform (ie. when a finding is published) or other apps (ie. Jira ticket is updated), at a specific time, or at a scheduled interval.
Triggers determine what event to listen to execute the actions described in a recipe.
Triggers can be set off in real time when an event occurs in the Cobalt platform (ie. when a finding is published)
or other apps (ie. Jira ticket is updated), at a specific time, or at a scheduled interval.

### Action

Expand All @@ -41,7 +50,8 @@ The Integration Builder provides a library of connectors for common business and

### Connection

Integration Builder connects to apps to build recipes. Once authenticated, each the triggers and actions provided by that app become available to use across recipes. See authentication best practices.
Integration Builder connects to apps to build recipes. Once authenticated, each the triggers and actions provided
by that app become available to use across recipes. See authentication best practices.

## Frequently Asked Questions

Expand All @@ -50,7 +60,9 @@ Click <i style="font-size:x-large; color: #0047AB" class="fas fa-chevron-right">
{{%expand "Does the Integration Builder support custom required fields?" %}}
<br>

Yes. When editing a “Create” or “Update” action provided by a connector, the edit form will dynamically fetch all available parameters. You can use datapills to populate those parameters with dynamic values, or simply type into the input field to set a static value.
Yes. When editing a “Create” or “Update” action provided by a connector, the edit form will dynamically fetch
all available parameters. You can use datapills to populate those parameters with dynamic values,
or simply type into the input field to set a static value.

{{% /expand %}}
<br>
Expand Down Expand Up @@ -82,15 +94,18 @@ Yes. Each customer organization is limited to 10,000 tasks, or individual proces
{{%expand "Is coding required to use Integration Builder?" %}}
<br>

While basic knowledge of logic and data structures can be helpful, the Integration Builder’s visual interface allows users to create workflows and integrations without writing extensive code. However, advanced users can also leverage the scripting capabilities for more complex automations.
While basic knowledge of logic and data structures can be helpful, the Integration Builder’s visual interface allows
users to create workflows and integrations without writing extensive code. However, advanced users can also leverage
the scripting capabilities for more complex automations.

{{% /expand %}}
<br>

{{%expand "Does the Integration Builder use a third party system?" %}}
<br>

Yes. The Integration Builder is built with Workato, Cobalt’s integration platform partner, and is covered under Cobalt’s Data Processing Agreement. See: [Workato FAQs](https://docs.workato.com/workato-faqs.html).
Yes. The Integration Builder is built with Workato, Cobalt’s integration platform partner, and is covered under
Cobalt’s Data Processing Agreement. See: [Workato FAQs](https://docs.workato.com/workato-faqs.html).

{{% /expand %}}
<br>
19 changes: 13 additions & 6 deletions content/en/Integrations/IntegrationBuilder/how-to-guides.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,15 +73,22 @@ You can simply drag-and-drop the data pills from the drawer into action input fi

## Authentication best practices

Integration Builder establishes connections to other apps using the app's authorization/authentication API. The available methods can vary, but usually use one of the following:
Integration Builder establishes connections to other apps using the app's authorization/authentication API.
The available methods can vary, but usually use one of the following:

* OAuth 2.0
* OAuth 1.0 (and variations)
* Basic authentication (username and password)
* API key or secret

As part of this step, you provide Cobalt with the permission to access data from the app. The permissions granted to Cobalt usually correspond with those of the user authorizing the app. As such, when creating connections, we recommend:

* Creating a dedicated app user for Cobalt ensures that recipes aren't dependent on the account of a human user. If someone leaves the company, recipes will continue to run. Additionally, it will allow you to tailor the permissions that your Cobalt recipe has to your app, thereby reducing security risk.
* When developing and testing recipes, we recommend using sandbox (or non-production) credentials for your connections to ensure that live data isn’t affected when switching environments.
* Please note: When setting up a connection, all users in your Cobalt Org will be able to use that connection and access any data. Be sure to use service accounts and limit permissions.
As part of this step, you provide Cobalt with the permission to access data from the app.
The permissions granted to Cobalt usually correspond with those of the user authorizing the app.
As such, when creating connections, we recommend:

* Creating a dedicated app user for Cobalt ensures that recipes aren't dependent on the account of a human user.
If someone leaves the company, recipes will continue to run. Additionally, it will allow you to tailor the permissions
that your Cobalt recipe has to your app, thereby reducing security risk.
* When developing and testing recipes, we recommend using sandbox (or non-production) credentials for your connections
to ensure that live data isn’t affected when switching environments.
* Please note: When setting up a connection, all users in your Cobalt Org will be able to use that connection and
access any data. Be sure to use service accounts and limit permissions.

0 comments on commit 22cd2e7

Please sign in to comment.