This is for v4+
https://www.rfc-editor.org/rfc/rfc7643.html#section-4.1
Github SCIM Provisioning
Github only supports SCIM for user operations. An organization must already exist for which members need to be managed. If you want to manage memberships of multiple organizations, configure a separate external system for each organization.
User fields and attributes
Grouper name | Attribute or field | Type | Required? | Description |
---|---|---|---|---|
id | field | String | required | UUID read from Github. Select only. |
userName | attribute | String | required | User name |
displayName | attribute | String | optional | Display name of the user |
familyName | attribute | String | required | Family name (Last name) |
givenName | attribute | String | required | Given name (First name) |
externalId | attribute | String | optional | External id |
formattedName | attribute | String | optional | Formatted name e.g Mr. John Smith, II |
emailValue | attribute | String | required | Email value e.g. test@example.com |
emailType | attribute | String | optional | Email type e.g. work |
Configure SCIM settings in Github for development purposes
- Go to Settings → Develop settings → Personal access tokens.
- Generate a new token and keep it safe. You will need it when configuring the external system.
- In your Github organization, you need SAML. For our testing we set up SAML integration between Github and Onelogin. You will need to set up an account on Onelogin. Github and Onelogin both offer trial versions for a few days.
- The SCIM URL that you need to enter while configuring the external system would look like: https://api.github.com/scim/v2/organizations/yourOrgName/
- Here is a video that shows how to integrate Onelogin with the Github organization (though you should integrate with your own saml).