Skip to main content

Purpose

The GitHub integration allows AirMDR to:
  • Access repository metadata and content information.
  • Enrich investigations with GitHub repository context.
  • Monitor repository-related security events.
  • Support investigations involving source code repositories and development workflows
Method 1: Fine-Grained Personal Access Token (Recommended) Method 2: Personal Access Token (Classic)

Pre-requisites

Set up a new GitHub account:
  • Create a new GitHub account, to avoid an outage to existing organization GitHub users, as a new PAT will be generated.
Mandatory Organization Invite to new users to join GitHub
  • Ensure the new user is invited to the organization. The new user must accept the invitation only to join the organization and the relevant team.

Authentication Methods

AirMDR supports the following authentication methods:

Fine-Grained Personal Access Token

Fine-Grained Tokens provide enhanced security through repository-level scoping and granular permissions.
1

Verify Organization Settings

  1. An organization administrator must enable Fine-Grained Personal Access Tokens.
  2. Navigate to Organization → Settings → Third-party Access → Personal access tokens → Settings.
  3. Configure Fine-grained tokens:
    • Enable Allow access via fine-grained personal access tokens
    • Click Save.
      If Require administrator approval is enabled, generated tokens must be approved by an organization administrator before they can be used.
2

Create a Dedicated GitHub Service Account (Optional)

To avoid interruptions caused by user departures or account changes:
  1. Create a dedicated GitHub user account.
  2. Add the account to your GitHub organization.
  3. Use this account exclusively for AirMDR integrations.
3

Navigate to Fine-Grained Token Creation

  1. Navigate to GitHub → Developer Settings.
  2. Select the Personal access tokens drop-down in the left navigation pane.
  3. Click “Fine-grained tokens”Generate new token. Git Hub12
4

Configure Basic Token Details & Select Resource Owner and Configure Repository Access

  1. Provide:
  2. Under Resource Owner.
  3. Select your GitHub Organization.
    Example: Resource Owner: MyOrganization
    This ensures the token is scoped to organization repositories.
  4. Select the Expiration as per organizational policy.
    The token will expire on the selected date.
  5. Option A: Choose “All Repositories”.
    Recommended as AirMDR can investigate all repositories.
    Git Hub11 (Or)
    Option B: Selected Repositories.
    Recommended for least-privilege deployments.
5

Configure Required Permissions

  1. Under Repository Permissions, configure:
  2. Metadata permission is automatically selected and required by GitHub.
  3. No additional permissions are required.
6

Generate Token

  1. Click Generate Token, and Copy the Token immediately.
Once created, copy and store it in password manager or any relevant vault securely (you won’t be able to see it again).
If administrator approval is required:
  • Submit the token request to the organization administrator.
  • Wait for approval before configuring AirMDR.

Generate GitHub Personal Access Token (PAT)

GitHub PAT increases Security, Fine-Grained Permissions, and fulfills the GitHub compliance policy for HTTPS Authentication.
1

Access GitHub

2
3

Generate a Personal Access Token

  1. Select the Personal access tokens drop-down in the left navigation pane.
  2. Click Tokens (classic).
  3. Click “Generate new token” and select “Generate new token (classic)”.
  4. Provide a Token name (descriptive name, For Example: “AirMDR Integration”).
  5. Select Expiration:
    • Choose a token lifespan or set it to “Never Expiration”.
  6. Set Permissions:
    • Choose scopes and define the following permissions:
      • repo (Full control of private repositories)
      • read:org (Read-only access to organization, teams, and membership)
      • read:user (Read-only access to profile information)
  7. Generate and Copy the Token:
    Once created, copy and store it securely (you won’t be able to see it again).
4

Securely share GitHub PAT

 Share the token via a secured method to the AirMDR operations team or self-configure in the AirMDR Integrations Dashboard.

Integration Credential Requirements

Use the following values in the AirMDR integration configuration screen:
Important:
AirMDR recommends using Fine-Grained Personal Access Tokens whenever possible, as they provide enhanced security through repository-level access control and least-privilege permissions.

Classic Token Requirements (Legacy)

Example AirMDR Configuration

GitHub displays the Personal Access Token only once during creation. Store it securely before proceeding with the AirMDR configuration.

GitHub Integration - Authentication Architecture

Git Hub10

GitHub Credential Reference Table

Validate Connectivity

Use the following command to verify connectivity and token authentication:
curl -H “Authorization: Bearer <GITHUB_PERSONAL_ACCESS_TOKEN>” \-H “Accept: application/vnd.github+json” \https://api.github.com/user
“login”: “github-user”,“id”: 12345678,“type”: “User”
curl -H “Authorization: Bearer <GITHUB_PERSONAL_ACCESS_TOKEN>” \-H “Accept: application/vnd.github+json” \https://api.github.com/user/repos
If you receive a 401 Unauthorized error, verify that the token is valid and has not expired.
If you receive a 403 Forbidden error, verify that the required repository permissions have been granted and, for Fine-Grained Tokens, ensure the token has been approved by your GitHub organization administrator.

Configure GitHub in AirMDR Integrations Dashboard

  1. Navigate to AirMDR, provide the credentials and click Login
  2. Navigate to the AirMDR Integrations Dashboard in the left navigation pane and select Integrations.
  3. Use the search option, enter the keyword “GitHub”, select the Connections tab, and click + Create button.
  4. Enter an unique name to the Instance (e.g., your org name-GitHub) to easily identify the user connection by AirMDR.
  5. Enter the application credentials like Auth_token in the Authentication Details field params, and click Save.

Skills provided by this Integration

To view the details of Input Parameters and Output for the respective skills
  • Go to AirMDR → GitHub Integration page.
  • Select the Skills tab and click on the required listed skills.

Additional Information

The GitHub integration does not generate logs within GitHub specifically for AirMDR connectivity. However, administrators can monitor integration health, token usage, and API access through both AirMDR and GitHub audit logs.

AirMDR Monitoring

After configuring the integration, administrators can monitor:
  • Integration connection status
  • Authentication validation results
  • Repository data synchronization status
  • Integration execution history
  • Error and connectivity notifications
GitHub Audit LogsFor GitHub Organizations, audit logs can be used to track:
  • Personal Access Token usage
  • Repository access events
  • Authentication attempts
  • Organization-level permission changes
  • Token approval activities (Fine-Grained Tokens)
Verify Token ActivityYou can verify that the token is actively being used by reviewing:
  • API authentication events
  • Repository access records
  • Security and audit events
Common Indicators of a Healthy Integration
If authentication or synchronization issues occur, review the AirMDR integration status first, then verify token validity, repository permissions, and organization approval settings within GitHub.
Follow these recommendations to ensure a secure and reliable GitHub integration with AirMDR.

✅ Do’s

❌ Don’ts

Security Recommendation For production environments, AirMDR recommends using a dedicated GitHub service account with a Fine-Grained Personal Access Tokenrepository-specific access, and read-only permissions to align with security best practices and the principle of least privilege.
  • 📧 Contact AirMDR Support through your designated support channel.
  • 🔁 Rotate credentials regularly. Regular maintenance of the GitHub integration helps ensure uninterrupted connectivity, secure access, and reliable repository monitoring.
Maintenance Activities
The GitHub integration uses a GitHub Personal Access Token (Fine-Grained or Classic) to securely authenticate AirMDR and retrieve repository information required for investigations and enrichment activities.Data ExchangedThe integration may access the following information based on the permissions granted to the Personal Access Token:
AirMDR only accesses the resources permitted by the configured GitHub Personal Access Token.
Security ControlsEncryptionNetwork RequirementsGitHub API EndpointThe integration communicates with GitHub using the GitHub REST API: https://api.github.comAccess Model
Security Recommendation AirMDR recommends using Fine-Grained Personal Access Tokens with Metadata (Read-only) and Contents (Read-only) permissions to align with the principle of least privilege and minimize security exposure.