Use JumpCloud Single Sign On (SSO) to give your users convenient but secure access to all their web applications with a single set of credentials. Automatically provision, update and deprovision users and groups in 1Password from JumpCloud using the SCIM integration. Leverage this integration to centralize user lifecycle, user identity, and group management in JumpCloud for 1Password. Save time and avoid mistakes, as well as potential security risks, related to manually creating users.
Read this article to learn how to setup the 1Password integration.
Prerequisites
- A JumpCloud Administrator account
- JumpCloud SSO Package or higher or SSO à la carte option
- A 1Password Business subscription or higher
- A user account with Administrative access or higher
- Your 1Password domain and sign-in address
- A DNS record to allow for encrypted (HTTPS) communication to the 1Password SCIM bridge
- A deployment environment with:
- A publicly accessible static IP address
- Access to port 443 and 80 to enable LetsEncrypt or a gateway with TLS termination
- Docker or Kubernetes
- 128 MB of RAM and 100 MB of available storage
- The 1Password SCIM integration requires users to set up a SCIM bridge server in your own environment to act as a connector between JumpCloud and 1Password. This ensures the encryption keys for your account are secure and only accessible to you
Important Considerations
- 1Password now supports Unlock with SSO:
- At this time, JumpCloud does not have a prebuilt SSO connector for 1Password
- Unlock with SSO is only available using the OpenID Connect (OIDC) protocol
- If you have an existing SCIM connector and want to also use SSO, you must create a separate custom OIDC connector
- Unlock with SSO will only work with 1Password 8 - you can’t sign in to 1Password 7 with SSO
- If you delete an integrated 1Password application from your Applications list, the application is removed from JumpCloud, but any previously bound users remain active in 1Password
- If you deactivate SCIM on your 1Password application, previously bound users remain active in 1Password. No further updates will be made to user accounts via the SCIM integration
- When a new user is provisioned using SCIM, an email is sent to the user allowing them to join the account and create their master password
- Their status will appear as Invited until they join
- To deactivate users, 1Password will either remove an Invited user, or mark an Active user as Suspended
- 1Password doesn’t support Sync Password functionality
- Group syncing is supported
Attribute Considerations
- A default set of attributes are managed for users. See the Attribute Mappings section for more details.
- If the first name or last name is updated in JumpCloud, it will update in 1Password too.
- Email addresses in your 1Password account must be identical to those in your identity provider.
- Display Name in 1Password will be created with the pattern: "firstname lastname" from the values provided in JumpCloud. The same will happen with the name.formatted SCIM attribute
- The externalId attribute in 1Password will correspond to the first part of the email. For example: email=john.doe@jumpcloud.com => externalId=john.doe
Configuring the SSO Integration
To create a new custom OIDC application
- Log in to the JumpCloud Admin Portal.
If your data is stored outside of the US, check which login URL you should be using depending on your region. If your organization uses LDAP, RADIUS, or requires firewall allow list configuration, the Fully Qualified Domain Names (FQDNs) will also be region specific. See JumpCloud Data Centers for the URLs, FQDNs, and IP addresses.
- Go to Access > SSO Applications.
- Click + Add New Application.
- In the the Custom Application tile, click Select.
- Verify your selection by clicking Next.
- Select Manage Single Sign-On (SSO) > Configure SSO with OIDC and then click Next.
- In the Display Label, type 1Password for the application. Optionally, you can enter a Description, adjust the User Portal Image and choose to hide or Show in User Portal.
- Click Save Application.
- If successful, click Close or Configure Application.
To configure JumpCloud
- Create a new custom OIDC application or select it from the Configured Applications list.
- Select the SSO tab.
- Enter the following information:
- Redirect URIs:
- Copy and paste https://YOUR_DOMAIN.1password.com/sso/oidc/redirect/, then change the domain placeholder to your sign-in address. If your 1Password account is in a different region, change .com to .ca or .eu accordingly
- Copy and paste onepassword://sso/oidc/redirect. This allows your team members to sign in to the 1Password apps with SSO
- Client Authentication Type - choose Public (None PKCE).
- Login URL - enter your sign-in address.
- In the Attribute Mapping section, add the following mappings:
- Redirect URIs:
| Service Provider Attribute Name | JumpCloud Attribute Name |
|---|---|
| name | username |
- Click Activate and copy the displayed Client ID.
Authorizing SSO Application Access
Users are implicitly denied access to SSO Applications. After you connect an application to JumpCloud, you need to authorize user access to that application. You can authorize user access from the Applications, Users List or User Groups page.
To authorize user access from the SSO Application’s page
- Log in to the JumpCloud Admin Portal.
If your data is stored outside of the US, check which login URL you should be using depending on your region. If your organization uses LDAP, RADIUS, or requires firewall allow list configuration, the Fully Qualified Domain Names (FQDNs) will also be region specific. See JumpCloud Data Centers for the URLs, FQDNs, and IP addresses.
- Go to Access > SSO Applications, then select the application to which you want to authorize user access.
- Select the User Groups tab. If you need to create a new group of users, see Get Started: User Groups.
- Select the check box next to the desired group of users to which you want to give access.
- Click Save.
To learn how to authorize user access from the Users or User Groups pages, see Authorize Users to an SSO Application.
To configure 1Password
- Open a new browser tab or window and sign in to your account on 1Password.com.
- Click Policies in the sidebar, then choose Unlock 1Password with Identity Provider.
- Choose Other from the list of identity providers and click Next.
- Select JumpCloud from list and enter the following information:
- Client ID - paste the Client ID copied in the previous section
- Well-known URL - paste https://oauth.id.jumpcloud.com/.well-known/openid-configuration
- Click Next and test the connection.
- You’ll be directed to JumpCloud to sign in, then returned to 1Password. This verifies connectivity between 1Password and JumpCloud.
Create SSO groups
After you configure Unlock with SSO, you’ll be redirected to the Settings page in your 1Password account. Before you configure your settings, you’ll need to create groups for the team members who will unlock 1Password with JumpCloud:
- Create a custom group. Give the group a descriptive name, like "JumpCloud SSO", for clarity.
- Add team members to the group. If you plan to invite additional team members to test Unlock with JumpCloud at a later date, create a new custom group for each additional set of testers.
The group(s) you create don’t have to be permanent, and you can eventually set your whole team to unlock with SSO once some groups have successfully migrated.
Choose who will unlock with JumpCloud
Users in the Owners group can’t unlock with JumpCloud and will continue to sign in to 1Password using their account password and Secret Key. This helps safeguard them from being locked out in the event that they can’t access their trusted devices and no one can recover them.
Learn more about implementing a recovery plan for your team.
By default, “People unlocking 1Password with an identity provider” is set to “No one”. This allows you to gradually migrate your team to unlock with JumpCloud. To specify which team members will unlock 1Password with JumpCloud, select one of the options:
- No one: To turn off Unlock with JumpCloud, select No one.
- Selected groups (recommended): Only the team members in groups you choose will sign in with JumpCloud. Learn how to use custom groups in 1Password Business.
- Everyone except guests: All team members, except owners and guests, will sign in with JumpCloud. All existing users will be prompted to switch to Unlock with JumpCloud, and all new users will use their JumpCloud username and password when joining 1Password. Guests and owners will sign in with an account password and Secret Key.
- Everyone (not recommended): Guests and all team members, except owners, will sign in with JumpCloud. All existing users will be prompted to switch to Unlock with JumpCloud, and all new users will use their JumpCloud username and password when joining 1Password.
Set a grace period
Team members who already have 1Password accounts will need to switch to unlock with JumpCloud. Specify the number of days before team members must switch. Consider the following when you set the grace period:
- By default, the grace period is set to 5 days. It can be set to 1 to 30 days.
- The grace period begins when an administrator adds a group after they choose the Selected groups option or when an administrator configures Unlock with JumpCloud for everyone on the team. You’ll see the grace period listed next to each group configured to unlock with JumpCloud.
- If a team member belongs to more than one group, their grace period is determined by the first group set up with SSO, even if the grace periods are different for those groups.
- If you add a user to a group with an expired grace period, you or another administrator will need to recover their account so they can set up unlock with SSO.
- If you edit the length of the grace period, it will be prolonged or shortened from the original configuration date. The grace period count doesn’t reset to zero when updated.
- If you plan to have more team members unlock with JumpCloud after initial configuration, it’s best to create a new custom group with its own grace period. This will make sure newly assigned team members won’t need their accounts recovered.
If a team member doesn’t migrate to Unlock with JumpCloud before the end of the grace period, they’ll be signed out of all their devices and must contact an administrator to recover their account.
Configuring the SCIM Integration
Creating a new JumpCloud Application Integration
- Log in to the JumpCloud Admin Portal.
If your data is stored outside of the US, check which login URL you should be using depending on your region. If your organization uses LDAP, RADIUS, or requires firewall allow list configuration, the Fully Qualified Domain Names (FQDNs) will also be region specific. See JumpCloud Data Centers for the URLs, FQDNs, and IP addresses.
- Go to Access > SSO Applications.
- Click + Add New Application.
- Type the name of the application in the Search field and select it.
- Click Next.
- In the Display Label, type your name for the application. Optionally, you can enter a Description, adjust the User Portal Image and choose to hide or Show in User Portal.
If this is a Bookmark Application, enter your sign-in URL in the Bookmark URL field.
- Optionally, expand Advanced Settings to specify a value for the SSO IdP URL. If no value is entered, it will default to https://sso.jumpcloud.com/saml2/<applicationname>.
The SSO IdP URL is not editable after the application is created. You will have to delete and recreate the connector if you need to edit this field at a later time.
- Click Save Application.
- If successful, click:
- Configure Application and go to the next section.
- Close to configure your new application at a later time.
To configure 1Password
- Sign in to your account on 1Password.com.
- Click Integrations in the sidebar.
- Choose JumpCloud from the User Provisioning section.
- Follow the onscreen instructions to generate credentials for your SCIM bridge.
- Copy the SCIM bridge URL and the Bearer Token.
The Client ID and Secret (token) may only be shown once. Copy them to a secure location, like the JumpCloud Password Manager, for future reference.
- Deploy your SCIM bridge.
- Optional: If you have existing custom groups, set up managed groups.
To navigate to your JumpCloud SCIM connector
- Log in to the JumpCloud Admin Portal.
If your data is stored outside of the US, check which login URL you should be using depending on your region. If your organization uses LDAP, RADIUS, or requires firewall allow list configuration, the Fully Qualified Domain Names (FQDNs) will also be region specific. See JumpCloud Data Centers for the URLs, FQDNs, and IP addresses.
- Go to Access > SSO Applications.
- Create a new application or select it from the Configured Applications list.
- Select the Provisioning tab.
To configure JumpCloud
- Click Configure.
- You’re presented with two fields:
- Base URL - paste the SCIM bridge URL that you created when setting up the SCIM bridge.
- Token Key - paste the Bearer token that you generated when setting up the SCIM bridge.
- Click Enable management of User Groups and Group Membership in this application if you want to provision, manage and sync groups.
- Review and edit any user attribute mappings.
- Click Activate.
Attribute Mappings
The Export Attributes Mapping table lists the Required and Optional Mappings that JumpCloud sends to the Service Provider. See Attribute Considerations for more information regarding attribute mapping considerations.
Learn about JumpCloud Properties and how they work with system users in our API.
Modifying User Attributes
To add user attributes
- From your connector’s configuration page, select the Identity Management tab.
- Expand the Export Attribute Mapping section and click Edit. The Optional Mappings table will open.
- Scroll to the bottom of the table and click +Add Attribute.
- Select one of the mapping types:
- Direct Mapping (JSON Path) - send the value from a user attribute in JumpCloud directly to an attribute in the service provider
- From the JumpCloud Attribute dropdown, select the desired attribute
- If you choose “Custom User Attribute” you must type the name of the attribute exactly as it on the user details page. To see the dropdown again, you must delete the attribute and add a new attribute
- From the SCIM Attribute dropdown, select the corresponding (destination) attribute
- From the JumpCloud Attribute dropdown, select the desired attribute
- Expression - transform or combine multiple user attributes into a single, custom value before sending it to the service provider
- Enter the expression in the JumpCloud Attribute field
- From the SCIM Attribute dropdown, select the corresponding (destination) attribute
- Constant - send a fixed, predefined value—like a specific company name —for every user to the service provider
- This is a free text field with no validation, e.g., the attribute must match exactly, including case, to the corresponding attribute in the user record. Once the custom attribute is added, you must delete it and readd a new custom attribute to see the dropdown again.
- Direct Mapping (JSON Path) - send the value from a user attribute in JumpCloud directly to an attribute in the service provider
- Repeat these steps for additional attributes.
- Click Preview Mappings to review the User Schema.
- If you do not select a specific user from the Preview Filter dropdown, the schema will default to the first user.
- Click Update.
Updates to the user schema will not dynamically sync. To force a sync, you must modify the user group’s record in some way, like adding a space to the Description field.
To modify existing user attributes
This enhancement gives you complete control over the user attributes sent from JumpCloud to this application. You can now:
- Fully control mappings - define which JumpCloud attribute or source data corresponds to an attribute in the SP's SCIM schema
- Use a variety of source values - map data from the user's standard attributes, Manager field, custom attributes, or other data sources
- Manipulate data with expressions - transform data, such as preferred first names and date format, using expressions before transmission to the SP. Learn more
- Preview changes - review your new mappings to ensure accuracy before you save
- From your connector’s configuration page, select the Identity Management tab.
- Expand the Export Attribute Mapping section and click Edit.
- For the type of attribute you would like to modify:
- Direct - select the new attribute from the dropdown(s)
- Expression - click in the Expression field and make the desired edits. If necessary, select the new attribute from the SCIM Attribute dropdown
- Custom - delete the existing values in either or both of the attribute fields and enter the new values
- Click Preview Mappings to review the updated User Schema.
- Click Update.
Updates to the user schema will not dynamically sync. To force a sync, you must modify the user group’s record in some way, like adding a space to the Description field.
Deleting user attributes
It's highly recommended you use all optional mappings. This creates a more complete user profile, enabling better automation and more accurate access management within the application.
- From your connector’s configuration page, select the Identity Management tab.
- In the Export Attribute Mapping section, click Edit. The Optional Mappings table will open.
- Click Delete (
) to remove any optional attributes.
- When finished, click Update.
Attributes that were initially included and populated in the user record and then deleted at a later time will not be modified or removed from the user record.
Restoring default user attributes
- From your connector’s configuration page, select the Identity Management tab.
- In the Export Attribute Mapping section, click Edit. The Optional Mappings table will open.
- Scroll to the bottom of the table and select Restore Defaults.
- Click Update and then click Save.
1Password User Attributes
| JumpCloud Attribute | SCIM Attribute | Applied |
| Required | ||
| userName | create and update | |
| Optional | ||
| company | $enterpriseUser.organization | create and update |
| costCenter | $enterpriseUser.costCenter | create and update |
| department | $enterpriseUser.department | create and update |
| employeeIdentifier | $enterpriseUser.employeeNumber | create and update |
| employeeType | userType | create and update |
| firstname | name.givenName | create and update |
| jobtitle | title | create and update |
| lastname | name.familyName | create and update |
| notNullOrEmpty(jcUser.displayname) ? jcUser.displayname : (notNullOrEmpty(jcUser.lastname) ? jcUser.firstname + ' ' + jcUser.lastname : jcUser.firstname) | displayName | create and update |
| notNullOrEmpty(providerUser.externalId) ? providerUser.externalId : jcUser.id | externalId | create and update |
| notNullOrEmpty(providerUser.locale) ? providerUser.locale : 'en-US' | locale | create and update |
| notNullOrEmpty(providerUser.preferredLanguage) ? providerUser.preferredLanguage : 'en-US' | preferredLanguage | create and update |
| toScimAddresses(find(jcUser.addresses, .type == 'work') ?? first(jcUser.addresses)) | addresses | create and update |
| toScimEmails(jcUser.email) | emails | create and update |
| toScimPhoneNumbers(find(jcUser.phoneNumbers, .type == 'work') ?? first(jcUser.phoneNumbers)) | phoneNumbers | create and update |
Group Attributes
| JumpCloud Property | JumpCloud UI Field Name | SCIM v2 Mapping | Application Value |
|---|---|---|---|
| name | Name | displayName | Name |
Enabling Group Management
You must select the Enable management of User Groups and Group Membership in this application option to manage groups and group membership in the application from JumpCloud.
Group Provisioning and Syncing
- Empty groups are not created
- JumpCloud takes over management of existing groups in the application when the user group name in JumpCloud matches the name of the group in the application
- All user groups associated with the application in JumpCloud are synced. Syncing occurs whenever there is a membership or group change event
- Group renaming is supported
- If a user group is disassociated from the application in JumpCloud, syncing immediately stops and the group is left as-is in the application. All members of that user group are deactivated in the application unless they are associated with another active application group that is managed from JumpCloud
Group Deletion
- Managed groups deleted in JumpCloud are deleted in the application
- All members of the deleted group are deactivated in the application, unless they are associated with another active application group that is managed from JumpCloud
Disabling Group Management
- You can disable group and group membership management by unchecking the Enable management of User Groups and Group Membership in this application option
- The managed groups and group membership are left as-is in the application
- JumpCloud stops sending group membership information for the user, but the user’s identity will continue to be managed from JumpCloud
1Password creates the user's display name and formatted name by combining the firstname and lastname attribute values. The display name and formatted name will be 'firstname lastname’.
SCIM Directory Insights Events
The following Directory Insights (DI) events provide visibility into failures and detailed information about the user and group data being added or updated from HR or other external solutions to JumpCloud.
Customers with no package or the Device Management Package will need to add the Directory Insights à la carte option. Directory Insights is included in all other packages.
SCIM DI Integration Events
| Event Name | Event Description |
|---|---|
| idm_integration_activate | Logged when an IT admin attempts to activated new SCIM integration. |
| idm_integration_update | Logged when an IT admin attempts to update a configured and activated SCIM integration. |
| idm_integration_reauth | Logged when an IT admin attempts to change the credentials for an activated SCIM integration. |
| idm_integration_delete | Logged when an IT admin attempts to deactivate an activated SCIM integration. |
SCIM DI User Events
| Event Name | Event Description |
|---|---|
| user_create_provision | Logged when JumpCloud tries to create a new user in service provider application. |
| user_update_provision | Logged when JumpCloud tries to update an existing user in service provider application. |
| user_deprovision | Logged when JumpCloud tries to change an existing user to inactive in the service provider application. |
| user_delete_provision | Logged when JumpCloud tries to delete an existing user in service provider application. |
| user_lookup_provision | Logged when JumpCloud encounters an issue when trying to lookup a user to determine if the user needs to be created or updated. |
SCIM DI Group Events
These DI events will only be present if SCIM Groups are supported.
| Event Name | Event Description |
|---|---|
| group_create_provision | Logged when JumpCloud tries to create a new group in service provider application. |
| group_update_provision | Logged when JumpCloud tries to update an existing group in service provider application. |
| group_delete_provision | Logged when JumpCloud tries to delete an existing group in service provider application. |
Removing the Integration
These are steps for removing the integration in JumpCloud. Consult your SP's documentation for any additional steps needed (like disabling "mandatory SSO login" settings) to remove the integration in the SP. Failure to remove the integration successfully for both the SP and JumpCloud may result in users, including admins, losing access to the application.
If your data is stored outside of the US, check which login URL you should be using depending on your region. If your organization uses LDAP, RADIUS, or requires firewall allow list configuration, the Fully Qualified Domain Names (FQDNs) will also be region specific. See JumpCloud Data Centers for the URLs, FQDNs, and IP addresses.
To deactivate the SCIM Integration
- Log in to the JumpCloud Admin Portal.
- Go to Access > SSO Applications.
- Search for the application that you’d like to deactivate and click to open the configuration window.
- Click Actions > Deactivate IdM and then click confirm.
To deactivate the SSO Integration
- Log in to the JumpCloud Admin Portal.
- Go to Access > SSO Applications.
- Search for the application that you’d like to deactivate and click to open its details panel.
- Select the SSO tab.
- Scroll to the bottom of the configuration.
- Click Deactivate SSO.
- Click Save.
- If successful, you will receive a confirmation message.
To delete the application
- Log in to the JumpCloud Admin Portal.
- Go to Access > SSO Applications.
- Search for the application that you’d like to delete.
- Check the box next to the application to select it.
- Click Delete.
- Enter the number of the applications you are deleting
- Click Delete Application.
- If successful, you will see an application deletion confirmation notification.