> For the complete documentation index, see [llms.txt](https://docs.expel.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.expel.io/workbench-setup/auto-remediations/disable-accounts/github-disable-accounts.md).

# GitHub: Disable Accounts

This guide helps you set up your GitHub device and grant necessary permissions so that you can enable the Disable Accounts auto remediation in Workbench.

*This guide is the first step of a larger process to enable auto remediations. After completing the steps on this page, you will be instructed to return to the* [*Enable an Auto Remediation in Workbench*](/workbench-setup/auto-remediations/enable-an-auto-remediation-in-workbench.md) *guide to finish your setup.*

## How It Works <a href="#h_01jh8ncdq41ghs4zvz4pj1n7wp" id="h_01jh8ncdq41ghs4zvz4pj1n7wp"></a>

If our SOC identifies an account (username or email address) that is compromised and must be disabled, Workbench completes the action automatically and logs the user out of their session. This action removes the user's access to the organization's private repos, teams, and resources, and severs org-authorized token/SAML-SSO access tied to membership. You have the option to restrict these actions to specific accounts by configuring an allow or deny list (the accounts must first be added as context, and then the list can be configured in Workbench; see [Step 3](#h_01jgycgywj4m9tc7j443dvsmf1)).

{% hint style="warning" %}
This remediation is *not* an account block or an enterprise account suspend. Therefore it does not delete or globally suspend the user's GitHub account, and also does not directly revoke the user's personal access tokens (PATs), SSH keys, or web sessions (which all live on the user's personal account). Note that PAT impact is not documented in Expel's code; this reflects the behavior of the org member-removal endpoint.
{% endhint %}

### Endpoints Used <a href="#h_01kcq58zyx8ybb32hecxz7qhhp" id="h_01kcq58zyx8ybb32hecxz7qhhp"></a>

**GitHub REST API**

org-scoped

<table><thead><tr><th width="123.40625">Method</th><th>Endpoint</th><th>Purpose</th></tr></thead><tbody><tr><td>GET</td><td><code>/orgs/{org}/members/{username}</code></td><td>Confirm the user is a current org member</td></tr><tr><td>GET</td><td><code>/orgs/{org}/memberships/{username}</code></td><td>Read membership state (active/pending) for the pre-check</td></tr><tr><td>DELETE</td><td><code>/orgs/{org}/members/{username}</code></td><td>Remove the user from the organization (the disable action)</td></tr></tbody></table>

Revert re-invites the user via PUT `/orgs/{org}/memberships/{username}`; the user must accept an emailed invite (expires \~3 months), so re-enable is not automatic.

## Step 1: Allow Appropriate Permissions in Your EDR Console <a href="#h_01fs7gwjh91x8crymftnked1kr" id="h_01fs7gwjh91x8crymftnked1kr"></a>

1. Make sure you've completed the steps in the appropriate GitHub Setup guide ([Cloud](/connect-your-technology/d-j-integrations/github/github-cloud-setup-for-workbench.md) | [Self-Hosted (On-Prem)](/connect-your-technology/d-j-integrations/github/github-self-hosted-on-prem-setup-for-workbench.md)) to ensure you've configured the permissions necessary for auto remediation.

## Step 2: Update Your Context <a href="#h_01jh5zhtqthkyym38xnhr25vgj" id="h_01jh5zhtqthkyym38xnhr25vgj"></a>

**If you do not want to specify any accounts for a "do not disable" or "always disable" list, and instead wish for Expel to automatically disable&#x20;*****all*****&#x20;identified accounts, skip to** [**Step 3**](#h_01jgycgywj4m9tc7j443dvsmf1)**.**

Working with your Customer Success Manager, prepare to create an allow or deny list by adding accounts as [org context](/workbench-reference/expel-terminology.md#org-context) for your environment. You will then be able to select those accounts as "Never disable" or "Always disable" assets when you enable the auto remediation in Workbench.

{% hint style="info" %}
If our SOC identifies an account that must be disabled and you have created either an allow ("Always disable") or deny ("Never disable") list in Workbench, any accounts falling outside of those parameters are assigned to you as actions rather than being disabled automatically.
{% endhint %}

## Step 3: Return to the Main Setup Guide <a href="#h_01jgycgywj4m9tc7j443dvsmf1" id="h_01jgycgywj4m9tc7j443dvsmf1"></a>

Your GitHub device is now ready for the Disable Accounts auto remediation. You should now do one of the following:

* **If you do not need to set up any other devices for this auto remediation**, you can return to the [Enable an Auto Remediation in Workbench](/workbench-setup/auto-remediations/enable-an-auto-remediation-in-workbench.md) guide to finish Step 2 of the process.
* **If you need to set up additional devices for this auto remediation, or wish to use this device with multiple auto remediations**, be sure to [complete those setup guides as well](/workbench-setup/auto-remediations.md) before returning to the [Enable an Auto Remediation in Workbench](/workbench-setup/auto-remediations/enable-an-auto-remediation-in-workbench.md) guide to finish Step 2 of the process. *Make sure to follow the setup guide that is specific to your auto remediation, as device setup instructions are unique to each auto remediation and device.*


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.expel.io/workbench-setup/auto-remediations/disable-accounts/github-disable-accounts.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
