Skip to content

Commit

Permalink
chore: add Okta SAML config example [INS-3273] (#176)
Browse files Browse the repository at this point in the history
* chore: add Okta SAML config example [INS-3273]

* fix up enterprise links

* fix

* fix url path

* touch up

* fix up
  • Loading branch information
filfreire authored Nov 13, 2023
1 parent 44c7561 commit 5d0e852
Show file tree
Hide file tree
Showing 21 changed files with 143 additions and 62 deletions.
8 changes: 7 additions & 1 deletion docs/_data/main-nav.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,14 @@ toc:
- title: Insomnia Enterprise
collapse-id: Enterprise
items:
- title: Enterprise
- title: Enable Enterprise membership
url: /insomnia/enterprise
- title: Configuring EE SSO
url: /insomnia/enterprise-configure-ee-sso
- title: Integrating Insomnia Enterprise with Okta SAML 2.0
url: /insomnia/enterprise-configure-okta-saml
- title: Integrating Insomnia Enterprise with Azure SAML 2.0
url: /insomnia/enterprise-configure-azure-saml
- title: Insomnia Sync Subscriptions
collapse-id: subscriptions
items:
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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 docs/assets/images/okta-app-assign-user.jpg
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 docs/assets/images/okta-app-login.jpg
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 docs/assets/images/okta-app-set-name.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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 docs/assets/images/okta-attribute-email.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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 docs/assets/images/okta-select-saml-2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ <h2>Start here</h2>
<li><a href="/insomnia/import-export-data">Import your collection or document</a> from another API client.</li>
<li><a href="/insomnia/environment-variables">Set up</a> your local environment.</li>
<li>Work <a href="/insomnia/insomnia-sync">solo or as a team</a>.</li>
<li>Setup <a href="/insomnia/insomnia-enterprise">Insomnia Enterprise features</a>.</li>
<li>Setup <a href="/insomnia/enterprise">Insomnia Enterprise features</a>.</li>
</ol>
</ul>
</div>
Expand Down
8 changes: 8 additions & 0 deletions docs/insomnia/enterprise-configure-azure-saml.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
layout: article-detail
title: Integrating Insomnia Enterprise with Azure SAML 2.0
category: "Integrating Insomnia Enterprise with Azure SAML 2.0"
category-url: enterprise-configure-azure-saml
---

> Guide coming soon!
54 changes: 54 additions & 0 deletions docs/insomnia/enterprise-configure-ee-sso.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
layout: article-detail
title: Configuring EE SSO
category: "Configuring EE SSO"
category-url: enterprise-configure-ee-sso
---

To set up Enterprise Single Sign-On (SSO) using a major SAML 2.0 provider like Okta or Azure in the Insomnia, you need to configure several fields.

The process can slightly differ depending on the SAML provider, but here's a general guide that applies to most cases, using Okta and Azure as examples.

Before setting up Enterprise SSO, you will need

- An active enterprise account with Insomnia.
- An admin account on your SAML provider (e.g., Okta or Azure).
- An organization created after activating your Enterprise license within Insomnia.

![enterprise sso](../assets/images/enterprise_sso_start.jpg)

### Steps

1. **Domain Identifier**
- Enter your domain identifier, which is typically your company domain.
- Example: `company.com`

2. **Connection Type**
- Select `SAML 2.0` as the connection type.

3. **SSO URL (Callback URL)**
- Use the SSO URL provided by Insomnia. This is the callback URL where the SAML response will be sent.
- Example: `https://insomnia.example.com/callback`

4. **Audience Restriction (Entity ID)**
- Enter the Audience Restriction or Entity ID provided by Insomnia.
- Example: `urn:example:insomnia`

5. **Sign in URL**
- For Okta: Navigate to your Okta admin dashboard, select your application, and find the "Sign on" section. Copy the "Identity Provider Single Sign-On URL."
- For Azure: In the Azure Portal, under the Azure Active Directory section, go to "Enterprise applications" and select your application. Under "Single sign-on," find the "Login URL."

6. **Sign in Certificate**
- For Okta: In the same section as the Sign in URL, you will find the "Identity Provider Certificate." Download it and paste the content or upload the file in Insomnia.
- For Azure: Similarly, under "Single sign-on" in Azure, download the "SAML Signing Certificate" and paste or upload it in Insomnia.

### Additional Notes

- The specific navigation paths in Okta or Azure might vary slightly based on updates to their interfaces. Always refer to the latest documentation provided by your SAML provider.
- After setting up SSO in Insomnia, it's recommended to test the SSO process to ensure everything is functioning correctly.
- If you encounter issues, double-check the entered values, especially the SSO URL and the Certificate, as these are common points of error.

This guide aims to provide a general idea of the setup process. For provider-specific instructions, it's advisable to consult the documentation of Okta or Azure or your provider, as they might have particular requirements or additional steps. See also our own guides:

- [Integrating Insomnia Enterprise with Okta SAML 2.0](enterprise-configure-okta-saml)
- [Integrating Insomnia Enterprise with Azure SAML 2.0](enterprise-configure-azure-saml)
66 changes: 66 additions & 0 deletions docs/insomnia/enterprise-configure-okta-saml.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
layout: article-detail
title: Integrating Insomnia Enterprise with Okta SAML 2.0
category: "Integrating Insomnia Enterprise with Okta SAML 2.0"
category-url: enterprise-configure-okta-saml
---

This guide outlines the steps for setting up Single Sign-On (SSO) for Insomnia Enterprise using Okta's SAML integration, ensuring a secure and efficient user authentication process.

#### Creating a New Application Integration in Okta

1. **Navigate to Okta:** Go to Applications > Applications.
2. **Initiate the Integration:** Click on "Create App Integration".

![okta create app integration](../assets/images/okta-create-app-integration.jpg)

3. **Choose Sign-in Method:** Select "SAML 2.0" as the sign-in method.

![okta saml 2](../assets/images/okta-select-saml-2.jpg)

#### Configuring the Application in Okta

4. **General Settings:** Complete the general settings form and proceed.

![okta set app name](../assets/images/okta-app-set-name.jpg)

5. **SSO Configuration in Insomnia:** Define your organization's domain identifier.

![insomnia enterprise sso set domain](../assets/images/insomnia-enterprise-sso-set-domain.jpg)

6. **Transfer SSO Details:** Copy the Single Sign-On URL and the Audience URI from Insomnia to Okta.

![okta app set sso and audience uri](../assets/images/okta-app-set-sso-and-audience-uri.jpg)

7. **Define Attributes:** Add an Attribute Statement. Set the name as `email` and map it to `user.email`. Complete the app integration setup.

![okta attribute email](../assets/images/okta-attribute-email.jpg)

#### Setting up Insomnia Enterprise

8. **Finalize SSO Setup:** In Insomnia, paste the "Sign on URL" and the "Signing certificate" from Okta.

![okta copy sign on url and signing cert](../assets/images/okta-copy-sign-on-url-and-signing-cert.jpg)

![insomnia enterprise sso copy sign on url and cert](../assets/images/insomnia-enterprise-sso-copy-sign-on-url-and-cert.jpg)
9. **Verify Connection:** Check for the message "Your SAML connection has been successfully updated" in Insomnia.

![insomnia enterprise sso create success](../assets/images/insomnia-enterprise-sso-create-success.jpg)

#### User Management

10. **Assigning Users in Okta:** Assign users to the application.

![okta app assign user](../assets/images/okta-app-assign-user.jpg)

11. **Inviting Users in Insomnia:** Invite the same users in the Insomnia organization dashboard.

![insomnia enterprise sso invite user](../assets/images/insomnia-enterprise-sso-invite-user.jpg)

12. **User Onboarding:** Users can log in using Okta, set an encryption passphrase, and accept the enterprise invitation.

![insomnia enterprise sso login](../assets/images/insomnia-enterprise-sso-login.jpg)

![accept invite enterprise user](../assets/images/accept-invite-enterprise-user.jpg)

Follow these steps to successfully integrate Insomnia Enterprise with Okta SAML for a streamlined and secure SSO experience.
61 changes: 2 additions & 59 deletions docs/insomnia/enterprise.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
---
layout: article-detail
title: Insomnia Enterprise
category: "Insomnia Enterprise"
title: Enabling Enterprise Membership in Insomnia
category: "Enabling Enterprise Membership in Insomnia"
category-url: enterprise
---

## Enabling Enterprise Membership in Insomnia

This guide provides step-by-step instructions on how to enable enterprise membership for your Insomnia API Client account.

### Prerequisites
Expand Down Expand Up @@ -53,58 +51,3 @@ This guide provides step-by-step instructions on how to enable enterprise member

2. In the organization setup page, you can invite members and configure additional settings, such as enabling Enterprise Edition Single Sign-On (EE SSO).
![manage organization](../assets/images/enterprise_manage_org.jpg)

## Configuring EE SSO

To set up Enterprise Single Sign-On (SSO) using a major SAML 2.0 provider like Okta or Azure in the Insomnia, you need to configure several fields.

The process can slightly differ depending on the SAML provider, but here's a general guide that applies to most cases, using Okta and Azure as examples.

Before setting up Enterprise SSO, you will need

- An active enterprise account with Insomnia.
- An admin account on your SAML provider (e.g., Okta or Azure).
- An organization created after activating your Enterprise license within Insomnia.

![enterprise sso](../assets/images/enterprise_sso_start.jpg)

### Steps

1. **Domain Identifier**
- Enter your domain identifier, which is typically your company domain.
- Example: `company.com`

2. **Connection Type**
- Select `SAML 2.0` as the connection type.

3. **SSO URL (Callback URL)**
- Use the SSO URL provided by Insomnia. This is the callback URL where the SAML response will be sent.
- Example: `https://insomnia.example.com/callback`

4. **Audience Restriction (Entity ID)**
- Enter the Audience Restriction or Entity ID provided by Insomnia.
- Example: `urn:example:insomnia`

5. **Sign in URL**
- For Okta: Navigate to your Okta admin dashboard, select your application, and find the "Sign on" section. Copy the "Identity Provider Single Sign-On URL."
- For Azure: In the Azure Portal, under the Azure Active Directory section, go to "Enterprise applications" and select your application. Under "Single sign-on," find the "Login URL."

6. **Sign in Certificate**
- For Okta: In the same section as the Sign in URL, you will find the "Identity Provider Certificate." Download it and paste the content or upload the file in Insomnia.
- For Azure: Similarly, under "Single sign-on" in Azure, download the "SAML Signing Certificate" and paste or upload it in Insomnia.

### Additional Notes

- The specific navigation paths in Okta or Azure might vary slightly based on updates to their interfaces. Always refer to the latest documentation provided by your SAML provider.
- After setting up SSO in Insomnia, it's recommended to test the SSO process to ensure everything is functioning correctly.
- If you encounter issues, double-check the entered values, especially the SSO URL and the Certificate, as these are common points of error.

This guide aims to provide a general idea of the setup process. For provider-specific instructions, it's advisable to consult the documentation of Okta or Azure or your provider, as they might have particular requirements or additional steps.

### Example Okta SAML

> Example tutorial for Okta SAML coming soon.
### Example Azure SAML

> Example tutorial for Azure SAML coming soon.
6 changes: 5 additions & 1 deletion docs/insomnia/environment-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ _Request using base URL and ID variables that can be reused._

## Environment Basics

An environment is a [JSON object](https://www.json.org/json-en.html) containing key-value pairs of the data you want to reference. Access the environment manager through the environment dropdown menu at the top of the sidebar. From here, you can edit the base environment, create sub environments, assign colors, and more.
An environment is a [JSON object](https://www.json.org/json-en.html) containing key-value pairs of the data you want to reference. Access the environment manager through the environment dropdown menu at the top of the sidebar. From here, you can edit the base environment, create sub environments, assign colors, and more.

![The Manage Environments modal allows you to access and edit your base and sub environments.](/assets/images/manage-envs.png)
_The Manage Environments modal allows you to access and edit your base and sub environments._
Expand Down Expand Up @@ -40,15 +40,18 @@ Once a variable is selected, it will be displayed with a colored placeholder. Cl
A base environment is assigned to every workspace within Insomnia and can be accessed via the environment manager. Variables in the base environment are available throughout the entire workspace, even if other environments are defined. A common use for the base environment is to store default variables that will not change across production, staging, or development services such as resource names, languages, sample data, etc.

## Sub Environments

Sub environments are most commonly used for store variables related to production, staging, or development services. They are also sometimes used to defining variables for different users of a single app. Once sub environments exist, they can be activated via the environment dropdown.

{:.alert .alert-primary}
**Note**: Sub environments can be created as Private, meaning they will never be synced or exported.

## Folder Environments

Folder environments are a rarely used feature, but can be invaluable for specific use cases. You can access a folder's environment from the folder dropdown in the sidebar. Any variables defined at the folder-level will be available to all requests within that folder. These will also override any variables defined within a sub environment or base environment.

## Environment Priority

If two variables with the same name are defined in multiple environments, the environment with higher priority will win. Here is the priority of environment, ranging from highest to lowest:

1. Folder Environment (highest priority)
Expand All @@ -58,6 +61,7 @@ If two variables with the same name are defined in multiple environments, the en
For example, if a variable is defined in a base environment and in a sub environment, the value in the sub environment will overwrite the one in the base environment.

## Recursive Variables

Environments can reference other variables, including variables defined within itself. This is especially useful for composing more complex variables such as the domain name in the following example.

![Use variables within environment variable json configuration to reference other variables and minimize duplication.](/assets/images/recursive-variables.png)
Expand Down

1 comment on commit 5d0e852

@vercel
Copy link

@vercel vercel bot commented on 5d0e852 Nov 13, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Successfully deployed to the following URLs:

insomnia-docs – ./

insomnia-docs-three.vercel.app
insomnia-docs-git-main-green-rs.vercel.app
insomnia-docs-green-rs.vercel.app

Please sign in to comment.