To configure a connection for outbound provisioning and SSO to GitHub, follow the instructions in this section. Outbound provisioning details are managed within an SP connection and may be added to an existing SP connection.
In the PingFederate administrator console, configure the data store that
PingFederate will use as the source of user data. For instructions, see Datastores in the PingFederate
- When targeting users and groups for provisioning, exclude the user account that you will use to administer users in your connection to GitHub. This prevents the PingFederate provisioning engine from interfering with the account that provisions users and groups.
- Create a new SP connection or select an existing SP connection from the SP Configuration menu.
On the Connection Template screen, select Use
a template for this connection and choose GitHub
Connector from the Connection Template
drop-down list. When asked during the connection configuration steps, import the
github-saml-metadata.xmlpackaged with this connector.Tip: If this selection is not available, verify the connector installation and restart PingFederate.
- On the Connection Type screen, ensure both the Outbound Provisioning and Browser SSO Profiles checkboxes are selected.
On the General Info screen, the default values are taken
from the metadata file you selected in step 2. In the Partner's
Entity ID (Connection ID) field and update with your
corresponding organization name.
- Click Next to continue the Browser SSO configuration. For more information, see the following sections under Identity provider SSO configuration:
- On the Assertion Creation screen, click Next.
- On the Protocol Settings screen, click Configure Protocol Settings.
- On the Summary screen, navigate to Assertion Consumer Service URL.
On the Assertion Consumer Service URL screen, edit the
existing entry. Enter the Endpoint URL corresponding to your organization name.
- Click Update and Done to proceed.
- On the screen, select the signing certificate.
- On the Outbound Provisioning screen, click Configure Provisioning.
On the Target screen, enter the values for each field as
required by the GitHub Connector.
Field Name Description Base URL
The base URL for GitHub. For example,
https://api.github.com/scim/v2/organizations/<organization_name>Note: To determine your organization name, see Accessing an organization in the GitHub documentation.
The access token used by the connector to make authenticated API calls to GitHub. For more information on obtaining the access token, see Obtain client ID and secret from GitHub and Generate OAuth access tokens.
Provisioning Options User Create
True (default) – Users will be created in GitHub.
False – Users will not be created in GitHub.Note: The provisioner.log will display a warning within the create user workflow that the user was not created in GitHub.
True (default) – Users will be updated in GitHub.
False – Users will not be updated in GitHub.
Enabling a previously deleted user in GitHub will trigger a create and as such, users can be enabled when User Update is set to false.Note: The provisioner.log will display a warning within the update user workflow that the user was not updated in GitHub.
True (default) – Users will be deleted in GitHub.
False – Users will not be deleted in GitHub.Note: The provisioner.log will display a warning indicating that the user was not deleted in GitHub.
Click Next to continue the provisioning configuration. For
more information, see the following sections under Outbound provisioning for IdPs in the PingFederate
Note: Credentials will be verified when the channel and SP connection is set to Active and provisioning is initiated.Tip: If you are not ready to complete the provisioning configuration, you can click Save and return to the configuration page later. To return to the configuration page, select the connection from .