Oxelone Docs

Search docs and API

Find a guide, a section of one, or an API operation by its name.

Open console (opens in a new tab)

Connectors GitHub

GitHub

GitHub is two connectors. GitHub reads one organisation on github.com, GitHub Enterprise Cloud or GitHub Enterprise Server. GitHub (Personal) reads the repositories one person owns. How the connect flow works is on How connectors work.

Who can do it

Connecting needs connections:manage (Manage connections), held by Owner, Admin and Fleet operator. Reading the connector needs connections:read.

Connect an organisation

  1. Go to Collection › Connectors and choose Connect on GitHub.
  2. Give the connection a Name, then sign in with one of two methods:
    • Install the Oxelone app on GitHub. GitHub opens its own install screen. This method is offered once a global admin has registered the app.
    • Fine-grained personal access token. Paste the token into the password field and name the Organisation beside it. The hint reads "Scoped to one organisation, which you name beside it."
  3. Optional: API base. It defaults to https://api.github.com. The hint reads "GitHub Enterprise Server: https://HOSTNAME/api/v3. Data residency: https://api.SUBDOMAIN.ghe.com." A connection through Oxelone's app uses the address the app was installed against; bring your own token to reach a self-hosted host.
  4. Optional: add Organisation owner's classic token, a classic personal access token with read:audit_log. It unlocks Audit events on GitHub Enterprise Cloud.
  5. Continue through Check and Rules, then choose Create connection.

On GitHub's side

  • To install the app, GitHub's own steps are: open the install link, choose your personal account or an organisation you belong to, choose All repositories or selected ones, review the permissions and click the button. Organisation owners can install apps on their organisation. A member who cannot install can ask: GitHub tells the owner instead.
  • To make a fine-grained token: profile picture › Settings › Developer settings › Personal access tokens › Fine-grained tokens › Generate new token. Under Resource owner, select the organisation. If the organisation must approve tokens, the token stays pending until an organisation administrator approves it.

Vendor documentation: https://docs.github.com/en/apps/using-github-apps/installing-a-github-app-from-a-third-party and https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens

What it reads

RecordsWhat you get
MembersPeople in the organisation, their role, and whether they use two-factor authentication.
Outside collaboratorsPeople with repository access who are not members.
TeamsTeams, their visibility and their default repository permission.
RepositoriesEvery repository: visibility, archive state, default branch and its security settings.
Branch protectionThe protection on each repository's default branch.
RulesetsOrganisation and repository rulesets, their enforcement and who may bypass them.
SecretsActions secrets by name and scope. Values are never read.
WorkflowsActions workflows and whether each is active.
Actions settingsWhich actions may run and what a workflow token may do, for the organisation and each repository.
Dependabot alertsOpen Dependabot alerts across the organisation.
Code scanning alertsOpen code scanning alerts across the organisation.
Secret scanning alertsOpen secret scanning alerts and whether each secret is still valid.
Security configurationsCode security configurations and what each enables.
Organisation rolesOrganisation roles and how many users and teams hold each.
Installed appsGitHub Apps installed on the organisation and how much they may do.
Copilot seatsWho holds a Copilot seat and when they last used it.
Copilot policiesThe organisation's Copilot settings: public-code suggestions, chat, CLI and seat management.
Copilot metricsThe latest 28-day usage report.
Copilot content exclusionsPaths Copilot is told not to read, per repository.
Audit eventsThe organisation's audit log, fetched forward from a cursor.
Deploy keysDeploy keys on each repository and whether each may write.
FilesThe files an inspection reads on each repository's default branch, by path and size, up to five hundred per repository. Contents are fetched for an inspection and never stored.

Files kept are manifests and agent files: requirements.txt, package.json, pyproject.toml, Cargo.toml, go.mod, CLAUDE.md, AGENTS.md, SKILL.md, .cursorrules, and anything under .github/workflows/ or .claude/.

What it can do

Each action is something a policy can run on a matching record. All need write access on the matching GitHub permission.

ActionConsequenceReversible
Remove from organisationThey lose access to every repository and team in the organisation.No
Remove outside collaboratorThey lose access to every repository they were invited to.No
Convert to outside collaboratorThey leave every team and keep only the repositories they were given directly.No
Remove Copilot seatTheir Copilot access ends at the end of the billing cycle.Yes
Delete secretWorkflows that read this secret stop working; the value cannot be recovered.No
Archive repositoryThe repository becomes read-only for everyone until it is unarchived.Yes
Make repository privateThe repository stops being visible outside the organisation.Yes
Disable ActionsNo workflow in this repository runs until Actions is enabled again.Yes
Enable secret scanning and push protectionGitHub scans this repository for secrets and blocks pushes that contain one.Yes
Dismiss Dependabot alertThe alert is closed as tolerable risk with a note naming Oxelone.Yes
Delete deploy keyAnything that used this key to reach the repository loses access.No
Block userThey cannot open issues, pull requests or comments in the organisation until unblocked.Yes

What it checks

Eleven posture checks and two inspections.

RulePackSeverityAction offered
Member without two-factor authenticationPosture checkHighNone
Public repositoryPosture checkMediumMake repository private
Default branch without protectionPosture checkMediumNone
Secret scanning or push protection offPosture checkHighEnable secret scanning and push protection
Actions may run any third-party workflowPosture checkMediumNone
Workflows get write access by defaultPosture checkMediumNone
Copilot may suggest public codePosture checkMediumNone
Copilot CLI enabledPosture checkLowNone
Copilot seat unused for 90 daysPosture checkLowRemove Copilot seat
Open critical Dependabot alertPosture checkHighNone
Organisation secret shared with every repositoryPosture checkLowNone
Secret in a repository fileInspectionHighNone
Prompt injection in an agent definitionInspectionHighNone

What it needs to be Readable

The app or token needs these GitHub permissions. Reads need read, actions need write.

  • Organisation permissions: Members, Administration, Secrets, Custom organization roles, GitHub Copilot Business, Organization Copilot metrics, Copilot content exclusion, Blocking users.
  • Repository permissions: Metadata, Administration, Secrets, Actions, Contents, Secret scanning alerts, Dependabot alerts, Code scanning alerts.

Some kinds depend on the plan:

  • Code scanning alerts need GitHub Advanced Security.
  • Audit events need GitHub Enterprise Cloud and the Organisation owner's classic token.
  • The Copilot kinds need GitHub Copilot.

A kind your credential cannot reach shows Not readable with the reason on the Check step. See How connectors work.

Sync period

All four periods are offered. 15 min is withheld when the organisation has more than 50 repositories.

Connect your own repositories

GitHub (Personal) reads one person's repositories on github.com.

  • Sign in with Install the Oxelone app on GitHub as yourself (hint: "When GitHub asks where to install, choose yourself rather than an organisation."), or a Fine-grained personal access token ("Scoped to you; the repositories it may read are chosen when the token is created.").
  • It reads Repositories, Files, Dependabot alerts, Code scanning alerts and Secret scanning alerts.
  • Actions: Archive repository, Make repository private, Disable Actions, Enable secret scanning and push protection, Dismiss Dependabot alert.
  • Rules: Secret scanning or push protection off, Open critical Dependabot alert, and the two inspections.

When it goes wrong

What you seeWhat it means
The GitHub app this platform is registered with cannot prove who installed it.Oxelone's GitHub App is not yet set up to confirm who installed it, so the connection is refused. Connect with your own credential instead, or write to support@oxelone.com.
This organisation is too large for a 15-minute period.More than 50 repositories. Pick a longer period.

With the API

Not available with an API key.