This document describes how to set up multi-factor authentication (MFA) for JetBrains Hub with AuthPoint as an identity provider. JetBrains Hub must already be configured and deployed before you set up MFA with AuthPoint.—
This integration was tested with JetBrains Hub v2020.1.
JetBrains Hub Authentication Data Flow with AuthPoint
AuthPoint communicates with various cloud-based services and service providers with the SAML protocol. This diagram shows the data flow of an MFA transaction for JetBrains Hub.
Before You Begin
Before you begin these procedures, make sure that:
- End-users can log in to JetBrains Hub
- A token is assigned to a user in AuthPoint
- You have an AuthPoint identity provider (IdP) certificate (see Certificate Management)
Configure JetBrains Hub
To start, you must download the metadata file from the Certificate Management page in the AuthPoint management UI. Once you have that, you can configure JetBrains Hub.
- Log in to WatchGuard Cloud.
- From the navigation menu, select Configure > AuthPoint. If you have a Service Provider account, you must first pivot to your Subscriber view.
- Select Resources.
- Click Certificate.
- Next to AuthPoint certificate you will associate with your resource, click and select Download metadata. We recommend that you choose the certificate with the latest expiration date.
The AuthPoint metadata provides JetBrains Hub with information necessary to identify AuthPoint as a trusted identity provider.
- Next to the same certificate, click and select Copy Fingerprint.
The Copy Fingerprint window appears.
- From the Algorithm drop-down list, select SHA-256.
- Click Copy next to the formatted or unformatted fingerprint. We recommend you leave this window open for reference.
- Log in to your JetBrains Hub with administrative account.
- Click Administration button at the up-right corner, select Auth Modules.
- Select New module > SAML 2.0.
- Type a name for the module. In our example, we name it AuthPoint.
- Open the AuthPoint metadata file you downloaded and find the SingleSignOnService Location and entityID values.
- In the SAML SSO URL text box, paste the SingleSignOnService Location value from the AuthPoint metadata file.
- In the IdP entity ID text box, paste the entityID value from the AuthPoint metadata file.
- In the Certificate fingerprint text box, paste the SHA-256 fingerprint from the Copy Fingerprint window in AuthPoint.
- Click Create.
- On the details page, copy the SP entity ID and ACS URL values. These are used in the next section to configure the SAML resource in AuthPoint. We recommend you leave this window open for reference.
You can choose to enable or disable User Creation. If you disable User Creation, user accounts must match in AuthPoint and JetBrains Hub.
- Click Save.
Before AuthPoint can receive authentication requests from JetBrains Hub, you must add a SAML resource in AuthPoint. You must also assign an access policy for the JetBrains Hub resource to the user group(s) that must authenticate to log in.
From the AuthPoint management UI:
- From the navigation menu, select Resources.
- From the Choose a Resource Type drop-down list, select SAML. Click Add Resource.
- Type a name for this resource.
- From the Application Type drop-down list, select JetBrains.
- In the Service Provider Entity ID text box, paste the SP entity ID value from JetBrains Hub.
- In the Assertion Consumer Service text box, paste the ACS URL value from JetBrains Hub.
- From the AuthPoint Certificate drop-down list, select the certificate to associate with your resource. This must be the same certificate that you downloaded the metadata for in the previous section.
- Click Save.
Add an Access Policy to AuthPoint
You must have at least one user group in AuthPoint for authentication with JetBrains Hub, and you must assign an access policy for the JetBrains Hub resource to that group. If you already have a group, you do not have to add another group.
In the AuthPoint management UI:
- From the navigation menu, select Groups.
- To add a new group, click Add Group. If you already have a group that you want to use, select the group to edit it.
- In the Name text box, type a descriptive name for the group.
- (Optional) In the Description text box, type a description of the group.
- In the Access Policy section, click Add Policy.
- In the Add Policy dialog box, from the Resource drop-down list, select the resource you want to add an access policy for.
- (Optional) To require that users type their password before they authenticate for this resource, enable the Require Password Authentication toggle.
- Select the authentication options that users in this group can select from when they authenticate.
For SAML resources, if you select more than one authentication option, users must select one of the available options when they authenticate. For example, if you select OTP and Push, users can choose to type their OTP or approve a push to authenticate. You cannot require that they do both.
- Click Add.
- (Optional) Add one or more safe locations to your group. For more information about safe locations and detailed instructions to add them, see About Safe Locations.
- Click Save.
Before you assign users to a group, you must add the users to AuthPoint. You can manually add user accounts or import user accounts from an external user database. For more information on how to add user accounts, see Add User Accounts.
Test the Integration
To test AuthPoint MFA with JetBrains Hub, you can authenticate with a mobile token on your mobile device. For SAML resources, you can choose any method (push, QR code, or one-time password).
In this example, we show the push authentication method (users receive a push notification in the mobile app that they must approve to authenticate).
- In a web browser, go to the JetBrains Hub URL.
- At the bottom of the login page, select the icon for your IdP (AuthPoint).
You are redirected to the AuthPoint authenticaiton page.
- Type your email address or AuthPoint user name. Click Next.
- If required, in the Password text box, type your password.
- For the authentication method, select Push.
- Click Send.
- Approve the authentication request that is sent to your mobile device.
You are logged in to JetBrains Hub.