: Onboard a GitHub Enterprise App to SSPM
Focus
Focus

Onboard a GitHub Enterprise App to SSPM

Table of Contents

Onboard a GitHub Enterprise App to SSPM

Connect a GitHub Enterprise instance to SSPM to detect posture risks.
To detect posture risks in your GitHub Enterprise instance, SSPM connects to the instance by using information that you provide. Once SSPM connects, it scans the GitHub Enterprise instance for misconfigured settings and will continue to run scans at regular intervals.
You can onboard a GitHub Enterprise app by using OAuth 2.0 authorization or by providing SSPM with login credentials.
If you onboard GitHub Enterprise by using OAuth 2.0, SSPM connects to a GitHub Enterprise API and uses the API to scan your GitHub Enterprise instance. During onboarding, SSPM redirects you to log in to GitHub Enterprise to grant SSPM access to the API scopes that it requires.
Alternatively, you can onboard GitHub Enterprise by providing administrator login credentials to SSPM. In this case, SSPM completes its scans by using data extraction techniques (also known as web scraping). If you onboard by provided SPSM with login credentials, the administrator account must be configured for multi-factor authentication (MFA) using one-time passcodes.

Onboard a GitHub Enterprise App to SSPM Using OAuth 2.0

Connect a GitHub Enterprise instance to SSPM to detect posture risks.
For SSPM to detect posture risks in your GitHub Enterprise instance, you must onboard your GitHub Enterprise instance to SSPM. Through the onboarding process, SSPM connects to a GitHub API and, through the API, scans your GitHub Enterprise instance for misconfigured settings. If there are misconfigured settings, SSPM suggests a remediation action based on best practices.
SSPM gets access to your GitHub Enterprise instance through OAuth 2.0 authorization. During the onboarding process, you are prompted to log in to GitHub Enterprise and to grant SSPM the access it requires.
To onboard your GitHub Enterprise instance, you complete the following actions:
  1. Identify the Administrator Account for Granting SSPM Access
    During the onboarding process, SSPM will redirect you to log in to GitHub Enterprise. After you log in, GitHub Enterprise will prompt you to grant SSPM the access it needs to your GitHub Enterprise instance.
    1. Verify that your account has the permissions that SSPM will require.
      Required Permissions: To grant SSPM the access that it requires, you must log in as an Enterprise Owner or Organization Owner. If you want SSPM to scan multiple organizations, the account must have Owner permissions for all the organizations.
      After SSPM establishes the connection, it will perform an initial scan of your GitHub Enterprise instance, and will then run scans at regular intervals. For SSPM to run these scans, the administrator account that you use to establish the initial connection must remain available. For this reason, we recommend that you use a dedicated service account to grant SSPM access. If you delete the service account, the scans will fail and you will need to onboard GitHub Enterprise again.
    2. Sign out of all GitHub Enterprise accounts.
      Signing out of all GitHub Enterprise accounts helps ensure that you sign in under the correct account during the onboarding process. Some browsers can automatically sign you in by using saved credentials. To ensure that the browser does not automatically sign you in to the wrong account, you can turn off any automatic sign-in option or clear your saved credentials. Alternatively, you can prevent the browser from using saved credentials by opening the Cloud Management Console in an incognito window.
  2. Connect SSPM to Your GitHub Enterprise Instance
    By adding a GitHub Enterprise app in SSPM, you enable SSPM to connect to your GitHub Enterprise instance.
    1. From the Add Application Page (Posture SecurityApplicationsAdd Application), click the GitHub Enterprise Beta tile.
    2. On the Posture Security tab, Add New instance.
    3. Log in with Credentials.
    4. Connect.
      SSPM redirects you to the GitHub Enterprise login page.
    5. Enter the credentials for the administrator account that you identified earlier, and log in to GitHub Enterprise.
      GitHub Enterprise displays a consent form that details the access permissions that SSPM requires.
    6. Review the consent form and allow access.

Onboard a GitHub Enterprise App to SSPM Using Login Credentials

Connect a GitHub Enterprise instance to SSPM to detect posture risks.
For SSPM to detect posture risks in your GitHub Enterprise instance, you must onboard your GitHub Enterprise instance to SSPM. Through the onboarding process, SSPM logs in to GitHub Enterprise using administrator account credentials. SSPM uses this account to scan your GitHub Enterprise instance for misconfigured settings. If there are misconfigured settings, SSPM suggests a remediation action based on best practices.
The GitHub Enterprise administrator account must be configured for multi-factor authentication (MFA), which adds an extra layer of security by requiring a one-time passcode to access the account.
To onboard your GitHub Enterprise instance, you complete the following actions:
  1. Collect Information for Connecting to Your GitHub Enterprise Instance.
    To access your GitHub Enterprise instance, SSPM requires the following information, which you will specify during the onboarding process.
    ItemDescription
    UsernameThe username of a GitHub administrator.
    (Required Permissions) The administrator must be assigned to the Enterprise Owner role.
    PasswordThe password for the GitHub administrator.
    MFA Secret KeyA key that is used to generate one-time passcodes for multi-factor authentication.
    Organization nameThe name of the GitHub Enterprises organization that SSPM will scan for misconfigured settings.
    As you complete the following steps, make note of the values of the items described in the preceding table. You will need to enter these values during onboarding to access your GitHub Enterprise instance from SSPM.
    1. Identify the GitHub administrator account that SSPM will use to access your GitHub Enterprise instance.
      (Required Permissions) The account must be assigned to the Enterprise Owner role. SSPM needs this level of access to monitor your GitHub Enterprise organization.
    2. Generate and copy an MFA secret key.
      The GitHub Enterprise account must be configured for MFA that requires a time-based one-time passcode (TOTP). TOTPs are generated from authenticator apps such as Microsoft Authenticator by using an MFA secret key. The key is a shared secret between GitHub Enterprise and the authenticator app for generating matching passcodes for verification. Like an authenticator app, SSPM will use the MFA secret key for passcode generation.
      1. Decide which authenticator app you will use and download it to your cellphone. You can use any authenticator app that supports TOTP generation.
      2. Log in to the GitHub administrator account.
      3. Navigate to your profile settings. To navigate to your profile settings, locate your profile icon in the upper-right corner of the page and select <profile-icon> Settings.
      4. From the left navigation pane, select Password and authentication.
      5. Enable two-factor authentication.
      6. On the Two-factor authentication setup page, select the option to Set up using an app.
      7. Follow the onscreen instructions for setting up the authenticator app, but, when the onscreen instructions display a QR code that contains the MFA secret key, don't scan the QR code with your authenticator app. Instead, display the setup key for manual configuration. The setup key is your MFA secret key.
      8. Copy the MFA secret key and paste it into a text file.
        Do not continue to the next step unless you have copied the MFA secret key. You will provide this key to SSPM during the onboarding process.
      9. Continue configuring your authenticator app by scanning the QR code or by manually entering the MFA key. Complete any remaining configuration steps by following the onscreen instructions.
    3. Identify the GitHub Enterprise organization to scan.
      Using GitHub Enterprise, you can manage a single organization or multiple organizations. During onboarding, SSPM prompts you for the name of the organization to scan. If you want to scan multiple organizations, you can onboard each one separately. To view the organizations in your GitHub Enterprise, navigate to your organizations page. To navigate to your organizations page in GitHub Enterprise, locate your profile icon in the upper-right corner of the page and select <profile-icon> Your organizations.
  2. Connect SSPM to Your GitHub Enterprise Instance.
    By adding a GitHub Enterprise app in SSPM, you enable SSPM to connect to your GitHub Enterprise instance.
    1. From the Add Application page (Posture SecurityApplicationsAdd Application ), click the GitHub Enterprise tile.
    2. On the Posture Security tab, Add New instance.
    3. Log in with Credentials.
    4. Enter the user credentials, MFA secret key, and the name of the organization that you want SSPM to scan.
    5. Connect.