GitHub

How to integrate GitHub with Apono to manage access to Github code repositories

Overview

  • On-Demand Permissions: Managing organizational users’ on demand access permissions to your cloud services or data repositories at granular level.
  • Extended SSO: Extend organizational authentication to infrastructure, applications and data repositories where you don’t have SSO.
  • Approval Workflows: Creating approval or trigger-based Access Flows allowing organizational user groups to receive the permissions they need.
  • Review User Access Permissions: View each organizational users access permissions across the integrated applications and data sources.

Prerequisites

  • Connector version 1.3.2 and later
  • Admin, Repo and User permissions to GitHub organization
  • Make sure users have their company emails linked to their profiles:
    • For GitHub Enterprise Cloud: make sure you sync GitHub with your IdP.
    • For non-Enterprise organizations: the organization's user email must be set on their public GitHub profile

Integration

Get API Token from the Github Developer Settings:

  1. Log into your Github account with the Organization dedicated user.
  2. Click on your Profile (icon with your initials).
  3. On the menu, click ON > Settings and choose Developer Settings > Personal Access Tokens.
  4. Select all the options under admin:org, repo, user permissions and Copy token
  5. Create a secret using AWS/GCP/K8s with key token and paste the copied value as value.

Integrate Apono with Github

  1. Log in to Apono.
  2. From the Catalog, go to the Developer integrations section.
  3. Click Connect Github.
  4. Specify the integrations details:
    • Integration name – type the name of the integration
    • Organization name – type the name of the github organization you are part of
    • When building an Access Flow you will reference this name
    • Secret – paste the created cloud secret name

Troubleshooting

  • User doesn't have the right privileges - make sure that the user is part of the organization and that the token includes all the required permissions.
  • User might not be found -
    • For GitHub Enterprise Cloud: make sure you sync GitHub with your IdP
    • For non-Enterprise organizations: the organization's user email must be set on their public GitHub profile