Configuring SAML SSO with GitHub Cloud and PingFederate
Learn how to enable GitHub sign-on from a PingFederate URL (IdP-initiated sign-on) and direct GitHub sign on using PingFederate (SP-initiated sign-on).
Before you begin
-
Configure PingFederate to authenticate against an IdP or datastore containing the users requiring application access.
-
Populate GitHub with at least one user to test access.
-
You must have administrative access to PingFederate and GitHub.
Create a PingFederate SP connection for GitHub
-
Sign on to the PingFederate administrative console.
-
Create an SP connection for GitHub in Ping Federate UI:
-
Configure using Browser SSO profile SAML 2.0.
-
Set Partner’s Entity ID to
https://github.com/orgs/your-tenant
. -
Enable the following SAML Profiles:
-
IdP-Initiated SSO
-
SP-Initiated SSO
-
-
In Assertion Creation: Authentication Source Mapping: Attribute Contract Fulfillment, map SAML_SUBJECT to an attribute containing the user’s email address.
-
In Protocol Settings: Assertion Consumer Service URL, set Binding to POST and set Endpoint URL to
https://github.com/orgs/your-tenant/saml/consume
. -
In Protocol Settings: Allowable SAML Bindings, enable POST.
-
In Credentials: Digital Signature Settings, select the PingFederate Signing Certificate.
-
-
Save the configuration.
-
Export the signing certificate.
-
Export and then open the metadata file.
Copy the value of the entityID and the Location entry (
https://your-value/idp/SSO.saml2
).
Add the PingFederate IdP connection to GitHub
-
Sign on to GitHub as an administrator.
-
Select your GitHub organization.
-
Click Organization settings, then click Security.
-
Under SAML single sign-on, select Enable SAML authentication.
The assertion consumer service URL displayed on this screen should match the value that you entered into the PingFederate Endpoint URL field.
-
Set the following values.
Field Value Sign on URL
The PingFederate Location value (
https://your-value/idp/SSO.saml2
)Issuer
The PingFederate entityID value.
Public certificate
Paste in the contents of the PingFederate signing certificate.
-
Click Save.