Integrate with GitHub Enterprise Cloud

Use JumpCloud SAML 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 GitHub Enterprise Cloud from JumpCloud using the Identity Management (SCIM) integration. Leverage this integration to allow users to login with with one set of credentials and to centralize user lifecycle, user identity, and group management in JumpCloud for GitHub Enterprise Cloud. Save time and cost related to user account and password management. Avoid mistakes, as well as potential security risks, related to manually creating users and groups.

Read this article to learn how to setup the GitHub Enterprise Cloud integration.


  • A team admin (administrator) account on a GitHub Enterprise plan.
  • Your GitHub Enterprise Domain and ORG Name.
  • A JumpCloud administrator account.
  • The SCIM API is available only to GitHub Enterprise Cloud accounts with SAML SSO configured and enabled.
  • You need owner account access to the GitHub organization you’re integrating with SCIM.

Important Considerations

  • GitHub Enterprise Cloud requires that you configure and enable SAML SSO before you create an Identity Management integration.
  • To prevent account lockout, the owner account of your GitHub organization must have an associated JumpCloud user account and that user account must be bound to your JumpCloud GitHub SSO application. 
  • Changes to user attributes made by JumpCloud are only reflected in the user’s SCIM metadata; they aren’t reflected in GitHub’s UI.
  • If you delete an integrated GitHub application from your Applications list, the application is removed from JumpCloud, but any previously bound users remain active in GitHub. These users will be able log in to GitHub with the password they used prior to enablement of SSO to the GitHub application from your JumpCloud account.
  • If you deactivate the Identity Management on your GitHub application, previously bound users remain active in GitHub and able to authenticate using SSO. No further updates will be made to user accounts via the Identity Management integration.
  • When users are provisioned, they aren’t automatically added to the organization; an invitation is sent to users’ email addresses.

Attribute Considerations

  • GitHub doesn’t support password synchronization. 
  • GitHut doesn’t support groups.
  • When a user is deprovisioned using SCIM, they’re removed from the organization and their external identity and associated :scim_user_id are deleted.

Creating a new JumpCloud Application Integration

  1. Log in to the JumpCloud Admin Portal.
  2. Navigate to USER AUTHENTICATION SSO Applications.
  3. Click + Add New Application.
  4. Type the name of the application in the Search field and select it.
  5. Click Next.
  6. 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.
  7. Click Save Application.
  8. If successful, click:
    • Configure Application and go to the next section.
    • Close to configure your new connector at a later time.

Configuring the SSO Integration

To configure JumpCloud

  1. Create a new application or select it from the Configured Applications list.
  2. Select the SSO tab.
  3. Replace any instances of YOURDOMAIN or YOUR_GITHUB_ORG_NAME with your GitHub values.
  4. Add any additional attributes.
  5. Click save.

To download the certificate

  1. Find your application in the Configured Applications list and click anywhere in the row to reopen its configuration window.
  2. Select the SSO tab and click IDP Certificate Valid > Download certificate.


The certificate.pem will download to your local Downloads folder.

To configure GitHub Enterprise Cloud

  1. Login to GitHub Enterprise Cloud – Organization as the administrator of the GitHub organization.
  2. On the next screen, select Edit [GitHub Organization Name] settings.
  3. When your organization settings will appear, navigate to SecuritySAML single sign-on and enter the following information:
    • Select Enable SAML authentication.
    • Sign on URL: Copy and paste the JumpCloud IDP URL.
    • Issuer: Copy and paste the JumpCloud IdP Entity ID.
    • Public Certificate: Copy and paste the contents of the certificate you downloaded in the previous section.
  4. Click Save.

Using JIT Provisioning

Additional attributes are required to use JIT provisioning. JIT required attributes are prepopulated and are on by default to enable JIT provisioning. You can’t edit the JIT required service provider attributes. You can customize the JumpCloud attribute name and the constant value for JIT required attributes. Toggle off the attributes to opt out of sending the attributes in the SAML assertion

To complete the provisioning process

  1. Authorize a user’s access to the application in JumpCloud.  
  2. Have the user log in to the application using SSO. The SAML assertion passes from JumpCloud to the service provider, and gives the service provider the information it needs to create the user account.

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

  1. Log in to the JumpCloud Admin Portal.
  2. Go to USER AUTHENTICATION > SSO Applications, then select the application to which you want to authorize user access.
  3. Select the User Groups tab. If you need to create a new group of users, see Get Started: Groups.
  4. Select the check box next to the group of users you want to give access.
  5. 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


For the integration to succeed, you need to have an open and active GitHub session in another browser tab. Otherwise the integration will fail at step 6.

  1. Log in to the JumpCloud Admin Portal.
  2. Go to USER AUTHENTICATION > SSO Applications.
  3. Search for GitHub Enterprise Cloud and select it.
  4. Select the Identity Management tab.
  5. Click Configure.
  6. You’re prompted to authorize JumpCloud to your GitHub organization. First, click Grant to give access to your GitHub organization, then click Authorize JumpCloud
  7. You’re redirected to JumpCloud and receive a confirmation of a successful integration. 

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

GitHub Enterprise Cloud User Attributes

GitHub User Attribute JumpCloud User Attribute Notes
external_id id
userName username
name.givenName firstname
name.lastName lastname
emails[ type='work',primary=true ].Email email
active !suspended && !passwordExpired

Importing Users

This functionality is helpful if users have already been created in the application but have not been created in JumpCloud.

  1. Log in to the JumpCloud Admin Portal.
  2. Go to USER AUTHENTICATION > SSO Applications.
  3. Search for the application and click to open its configuration panel. 
  4. Select the Identity Management tab.
  5. Click manual import.
  6. 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 – The 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.

  1. 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.
  1. 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.

Removing the Integration

To deactivate the IdM Integration

  1. Log in to the JumpCloud Admin Portal.
  2. Go to USER AUTHENTICATION > SSO Applications.
  3. Search for the application that you’d like to deactivate and click to open its details panel. 
  4. Under the company name and logo on the left hand panel, click the Deactivate IdM connection link.
  5. Click confirm
  6. If successful, you will receive a confirmation message.

To deactivate the SSO Integration

  1. Log in to the JumpCloud Admin Portal.
  2. Go to USER AUTHENTICATION > SSO Applications.
  3. Search for the application that you’d like to deactivate and click to open its details panel. 
  4. Select the SSO tab.
  5. Scroll to the bottom of the configuration.
  6. Click Deactivate SSO
  7. Click save
  8. If successful, you will receive a confirmation message.

To delete the application

  1. Log in to the JumpCloud Admin Portal.
  2. Go to USER AUTHENTICATION > SSO Applications.
  3. Search for the application that you’d like to delete and click to open its details panel.
  4. Check the box for the application.
  5. Click Delete.
  6. Enter the number of the applications you are deleting
  7. Click Delete Application.
  8. If successful, you will see an application deletion confirmation notification.

List IconIn this Article

Still Have Questions?

If you cannot find an answer to your question in our FAQ, you can always contact us.

Submit a Case