Identity providers
Connect Ping Identity
Ping Identity is two products in most conversations: PingOne, the cloud platform, and PingFederate, the self-hosted federation server that large and regulated organisations run themselves. The SAML values you exchange are the same; where you type them, and who has to be in the room, are not.
Work out which product you are connecting
Ask before you start. A PingOne setup can be completed by an administrator in a browser in fifteen minutes. A PingFederate change usually goes through a change window and may involve a network team, because the server is inside the customer's estate.
| PingOne | PingFederate | |
|---|---|---|
| Runs where | Ping's cloud | The customer's own infrastructure |
| Configured by | An admin in the console | An identity engineering team, usually with a change ticket |
| Metadata | Downloadable from the connection | Often published at a federation metadata URL |
| Provisioning | Outbound SCIM from PingOne | Varies — often driven from the directory behind it |
| Typical lead time | Same day | Days to weeks |
Before you start
- An organization in Paycux for the customer, with their email domain claimed.
- The ACS URL and entity ID from the Paycux connection.
- For PingOne, an administrator with rights to add applications in the relevant environment. Ping environments are separate, and configuring the wrong one is easy.
- For PingFederate, the customer's federation metadata URL, or an exported metadata file.
Create the application in PingOne
- 1In the PingOne console open Connections, then Applications, and choose Add Application.
- 2Give it a name and icon, choose SAML Application, and continue.
- 3Select Manually enter, then paste the Paycux ACS URL into ACS URLs and the Paycux entity ID into Entity ID.
- 4Set the subject NameID format to emailAddress and the assertion validity to the default unless the customer asks otherwise.
- 5Save, then open the Configuration tab and download the signing certificate and the metadata.
- 6Enable the application and assign the groups that should have access under the Access tab.
PingOne applications are disabled when created. A connection that looks correct but produces no assertion is usually an application that was never toggled on.
Map the attributes
Attribute mapping lives on its own tab. PingOne sends the subject by default and nothing else, so add the three fields your product needs to render a user list.
| Application attribute | PingOne mapping | Required |
|---|---|---|
| saml_subject | User ID | Yes — the stable identifier |
| Email Address | Yes | |
| firstName | Given Name | Recommended |
| lastName | Family Name | Recommended |
| groups | Group Names | Only if roles depend on them |
Map saml_subject to User ID rather than to Email Address. The user ID is a stable identifier; an email address is a mutable attribute, and keying your records on it is a decision you will regret at the first domain rename.
PingFederate, in outline
With PingFederate, your side of the exchange is unchanged: you supply an ACS URL and an entity ID, and you receive a sign-on URL and a signing certificate. The customer's team creates an SP connection, adds an attribute contract and configures an adapter to source those attributes from their directory.
The most useful thing you can give them is the metadata for your side and a clear attribute contract — the three or four claim names you expect, spelled exactly. Most delays here come from ambiguity, not difficulty.
1# Paycux baglantisinin bekledigi sozlesme2SAML_SUBJECT -> kalici kullanici kimligi (e-posta degil)3email -> birincil e-posta adresi4firstName -> ad5lastName -> soyad6groups -> cok degerli, yalniz rol eslemesi gerekiyorsa78# Metadata URL ornegi (musteri tarafi)9https://sso.foo-corp.example/pf/federation_metadata.ping?PartnerSpId=paycux
Finish the connection in Paycux
- 1Upload the metadata file, or paste the single sign-on URL, issuer and certificate into the Paycux connection.
- 2Run a test sign-in as an assigned user and read the returned profile.
- 3Confirm the subject identifier is stable by signing in twice and comparing it.
- 4Activate the connection.
Provisioning
- 1Create a directory in Paycux for the same organization and copy the SCIM endpoint URL and bearer token.
- 2In PingOne, open the application's Provisioning tab and add an outbound SCIM connection using those values.
- 3Choose the population or groups to provision. Provisioning an entire environment is rarely what the customer wants.
- 4Run the connection test before enabling, then turn provisioning on and watch the first sync in the provisioning log.
When it does not work
| Symptom | Usual cause |
|---|---|
| No assertion is ever sent | The PingOne application was created but never enabled. |
| Access denied for a valid user | The user's group is not in the application's Access tab. |
| Subject changes between sign-ins | saml_subject is mapped to an attribute that is not stable. |
| Signature failure after months of working | The signing certificate rotated; refresh the metadata. |
| Configuration correct but wrong environment | PingOne environments are separate; the app is in another one. |
| PingFederate connection stalls | The attribute contract was ambiguous. Send the exact claim names again. |