- Generate a public certificate and private key pair.
- You must be a GitHub administrator in the organization to enable SAML.
- This connector applies to Hosted on GitHub.com Business Plans. Developer and Team accounts do not support SAML.
- How to configure User authorization.
- Recommended: Do not enforce SAML SSO authentication for all members of the organization until this has been tested and single sign-on recovery codes have been obtained from GitHub.
- The first time a user uses IdP initiated login to the organization, they will need to enter their username and password manually.
Configure the JumpCloud SSO Application
- Access the JumpCloud Administrator Console at https://console.jumpcloud.com.
- Select Applications in the main navigation panel.
- Select the + in the upper left, scroll or search for the application in the 'Configure New Application' side panel, the select 'configure'.
- You can upload a service provider application's XML metadata file to populate SAML connector attributes for that application. The attributes populated by the metadata file may vary by the application. To apply a metadata file for the application you're connecting, click Upload Metadata. Navigate to the file you want to upload, then click Open. You'll see a confirmation of a successful upload. Be aware that if you upload more than one metadata file, you'll overwrite the attribute values applied in the previously uploaded file.
- In the IDP Entity ID field, enter
- Select Upload IdP Private Key and upload the private.pem file generated according to the above prerequisites.
- Select Upload IdP Certificate and upload the cert.pem file generated according to the above prerequisites.
- In the SP Identity ID field, replace YOUR_GITHUB_ORG_NAME with the name of your GitHub organization.
- In the ACS URL field, replace YOUR_GITHUB_ORG_NAME with the name of your GitHub organization.
- In the field terminating the IdP URL, either leave the default value or enter a plaintext string unique to this connector.
- (Optional) In the Display Label field, enter a label that will appear under the Service Provider logo within the JumpCloud User console.
Configure the Service Provider
- See Enabling and testing SAML single sign-on for your organization to access GitHub's SAML SSO settings and Enable SAML authentication.
- In the "Sign on URL" field, enter the IDP URL specified above.
- In the "Issuer" field, enter the IDP Entity ID specified above.
- In the "Public Certificate" field, paste the contents of the IdP Certificate uploaded to JumpCloud above.
- Select RSA-SHA1 for the Signature Method and SHA1 for the Digest Method.
- Select 'Test SAML configuration'. It should return 'Your SAML provider settings have been validated'. Correct any issues if found. Select Save.
Validate SSO authentication workflows
- The first time a user logs in, they will be prompted to create a new account or log in with an existing account. This is where GitHub will link the JumpCloud account to the GitHub account and create a session cookie. If a user manually logs out of GitHub, or the session cookie expires, they will need to log in to GitHub again for either of the SSO authentication workflows in order to obtain a new session cookie.
- Access the JumpCloud User Console at https://console.jumpcloud.com.
- Select the Service Provider icon.
- This should automatically launch and login to the application.
- Go to
- If necessary, log into the JumpCloud User Console as the appropriate user.
- You should automatically be logged in to the application.