Prerequisites
- A JumpCloud administrator account.
- JumpCloud SSO Package or higher or SSO à la carte option.
- A TeamViewer Business plan or higher.
- A valid Tensor license for TeamViewer.
- Owner or Administrator permissions in the TeamViewer tenant portal.
Important Considerations
- SSO must be configured prior to creating an Identity Management integration.
- Provisioning in TeamViewer is based on the members of your TeamViewer organization. However, user email addresses must be unique across all TeamViewer. This requirement causes the provisioning to fail if there’s an existing user registered in TeamViewer with the same email address, but that user isn’t part of your organization.
- Removing a user from a TeamViewer organization through the TeamViewer Management Console doesn’t delete the user account. Provisioning can fail to recreate the user because the account with the corresponding email address still exists.
- Users can’t be deleted from TeamViewer, but they can be unbound from a group and are reflected as Inactive in TeamViewer.
- If you delete an integrated TeamViewer application from your Applications list, the application is removed from JumpCloud, but any previously bound users remain active in TeamViewer. These users are able log in to TeamViewer with the password they used prior to enablement of SSO to the TeamViewer application from your JumpCloud account.
- If you deactivate the Identity Management on your TeamViewer application, previously bound users remain active in TeamViewer and able to authenticate using SSO. No further updates are made to user accounts via the Identity Management integration.
- If a user’s password expires in JumpCloud, their account becomes suspended and they are deactivated in all applications that have Identity Management configured and, are associated to them. Once the user’s password is updated, the account and previously associated applications are reactivated.
- If you need to update your token, you must deactivate the IdM integration, update the token, and then reactivate the IdM integration.
- Groups are supported.
Attribute Considerations
- The operation DELETE is not supported in the TeamViewer SCIM API.
- You can’t filter users by email.
- You can’t update the userName or email attributes with the TeamViewer provisioning integration.
- TeamViewer’s SSO user schema extension, ssoCustomerId, is necessary for enabling SSO for the users created by SCIM. If the customer identifier parameter is specified, newly created users are automatically SSO enabled and don’t need a TeamViewer account password. Learn more about SSO Customer Identifiers.
Creating a new JumpCloud Application Integration
- Log in to the JumpCloud Admin Portal.
- Navigate to USER AUTHENTICATION > 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
Configuring the SSO Integration
To configure JumpCloud
- Create a new application or select it from the Configured Applications list.
- Select the SSO tab.
- Add or change any attributes.
- Click save.
Copy the metadata URL
- Find your application in the Configured Applications list and click anywhere in the row to reopen its configuration window.
- Select the SSO tab and click Copy Metadata URL.
- The URL will be copied to your clipboard.
To configure TeamViewer
- In to TeamViewer Management Console, navigate to Company administration > Single Sign-On.
- Click on Add domain and enter the domain you want to activate SSO for.
- Enter your company’s domain for Domain.
- For Configuration, select Metadata URL, then paste the URL copied from JumpCloud.
- Click Save & Next.
- Click Generate Customer Identifier.
This custom identifier is not stored by TeamViewer, but is used for the initial configuration of SSO. It must not be changed at any point in time, since this will break Single Sign-On and a new setup will be necessary. Any random string can be used as customer identifier. This string is later required for the configuration of the IdP.
- Open the connector in JumpCloud and paste the Customer Identifier in the Constant Attributes Value section.
- Go back to the Single Sign-On Customer Identifier window in TeamViewer, then click Continue.
- Verify your domain by create a new TXT record for your domain with the values shown on the verification page, then click Start Verification. The verification process may take up to 24 hours.
Authorizing User SSO Access
Users are implicitly denied access to applications. After you connect an application to JumpCloud, you need to authorize user access to that application. You can authorize user access from the Application Configuration panel or from the Groups Configuration panel.
To authorize user access from the Application Configuration panel
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > 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 group of users you want to give access.
- Click save.
To learn how to authorize user access from the Groups Configuration panel, see Authorize Users to an SSO Application.
Validating SSO authentication workflow(s)
IdP-initiated
- Access the JumpCloud User Console
- Select the application’s tile
- The application will launch and login the user
SP-initiated
- Navigate to your Service Provider application URL
- You will be redirected to log in to the JumpCloud User Portal
- The browser will be redirected back to the application and be automatically logged in
Configuring the Identity Management Integration
- Create a new application or select it from the Configured Applications list.
- Select the Identity Management tab.
- Click Configure.
- You will be prompted to log in to the TeamViewer Management Console with your TeamViewer account.
- You’re redirected to the JumpCloud console SSO Identity Management section for TeamViewer.
- If successful, you’ll receive a confirmation that the Identity Management integration has been verified.
- Click save.
- You receive a confirmation that the application was saved successfully.
Attribute Mappings
The following table lists attributes that JumpCloud sends to the application. See Attribute Considerations for more information regarding attribute mapping considerations.
Learn about JumpCloud Properties and how they work with system users in our API.
TeamViewer User Attributes
JumpCloud Property | JumpCloud UI | SCIM v2 Mapping | TeamViewer Value | Type |
---|---|---|---|---|
id* | id | string | ||
Company Email | userName | string | ||
firstname | First Name | name.givenName | givenName | string |
lastname | Last Name | name.familyName | familyName | string |
Company Email | emails: value | string | ||
displayName | displayName | displayName | displayName* | string |
password | password | password | password | string |
!suspended && !passwordExpired | N/A | active | active | boolean |
N/A | N/A | meta.created | N/A | string |
N/A | N/A | meta.lastModified | N/A | string |
Group Attributes
JumpCloud Property | JumpCloud UI Field Name | SCIM v2 Mapping | Application Value |
---|---|---|---|
name | Name | displayName | Name |
- displayName: holds the name of the user when returned by the API. It also takes precedence over any other name attribute when setting the username.
- name.formatted: holds the same value as the displayName attribute when returned by the API. It is used if the displayName isn’t given.
- name.givenName: holds the first part of the TeamViewer username when split by a space. name.familyName holds the last part of the name. If the name doesn’t contain spaces, both values are null. These values are only considered for the username if neither the displayName or name.formatted attributes are set. The name is built by separating givenName and familyName using a space character.
Neither of the strings givenName and familyName can be null or empty, otherwise the user provisioning fails due to the Name parameter missing error.
Group Management Considerations
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
Importing Users
This functionality is helpful if users have already been created in the application but have not been created in JumpCloud.
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application and click to open its configuration panel.
- Select the Identity Management tab.
- Click manual import.
- Select the users you want to create in JumpCloud from the application from the list of users that appear. Users in the list have two import statuses:
- New – user has not been imported
- Imported – user has been imported and has an account in JumpCloud
Tip: Try using the New Users-only filter when selecting users to import. This will move all of your new users to the top of the list, making them easier to identify and select.
- Click import.
- If you are importing less than 100 users, your import results will display in real time and you can continue onboarding your users
- If you have more than 100 users being imported, JumpCloud will send you an email when your import is complete
- You can now connect and grant users access to all their JumpCloud resources. Learn more in the Authorize Users to an Application and Connecting Users to Resources articles.
Warning: Imported users must be members of a user group bound to an application for JumpCloud to manage their identity in, and access to, the application.
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 Identity Management integration. |
idm_integration_update | Logged when an IT admin attempts to update a configured and activated SCIM Identity Management integration. |
idm_integration_reauth | Logged when an IT admin attempts to change the credentials for an activated SCIM Identity Management integration. |
idm_integration_delete | Logged when an IT admin attempts to deactivate an activated SCIM Identity Management 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. |
If SCIM Groups are supported:
SCIM DI Group Events
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 to remove the integration in the SP. Failure to remove the integration successfully for both the SP and JumpCloud may result in users losing access to the application.
To deactivate the IdM Integration
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application that you’d like to deactivate and click to open its details panel.
- Under the company name and logo on the left hand panel, click the Deactivate IdM connection link.
- Click confirm.
- If successful, you will receive a confirmation message.
To deactivate the SSO Integration or Bookmark
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > SSO Applications.
- Search for the application that you’d like to deactivate and click to open its details panel.
- Select the SSO or Bookmark tab.
- Scroll to the bottom of the configuration.
- Click Deactivate SSO or Deactivate Bookmark.
- Click save.
- If successful, you will receive a confirmation message.
To delete the application
- Log in to the JumpCloud Admin Portal.
- Go to USER AUTHENTICATION > 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.