PingOne
Ce guide explique comment configurer IBM Application Gateway (IAG) en tant que partie dépendante OIDC pour PingOne.
Ce guide a été rédigé en octobre 2023, les étapes ci-dessous peuvent changer si un fournisseur tiers modifie ses interfaces administratives.
Prérequis
- Consultez la documentation sur les fournisseurs tiers pour obtenir des informations de haut niveau sur l'utilisation de l'IAG avec des fournisseurs d'identité tiers.
- Un abonnement PingOne actif. Un compte d'essai avec un environnement Workforce Solution peut être utilisé.
Ressources de référence
La documentation PingOne suivante a été utilisée pour préparer ces instructions de configuration :
Configuration
Etapes de la configuration de PingOne
Naviguez jusqu'à Connexions > Applications et cliquez sur + pour ajouter une application. Complétez le champ Nom de l'application, définissez le Type d'application sur OIDC Web App et cliquez sur Enregistrer.

L'application doit être activée avant de pouvoir être utilisée en basculant le commutateur d'activation. Accédez à l'onglet Vue d'ensemble et notez l'ID du client et la valeur du secret du client.

Dans IAG, l'ID du client est utilisé dans le champ client_id
et le secret du client est utilisé dans le champ client_secret
.
Dans cet exemple, les valeurs générées pour l'identifiant et le secret du client sont les suivantes :
- client_id
c5683508-acee-4435-a871-2b7a19c86610
- clientsecret `zF57tApDDikZqg7Zj2kMARYHkzvr1cenWdBt.tq8~xw-haIjXqZ0EuAgLodxRZD`
La configuration de l'application doit être mise à jour pour inclure l'URI de redirection de l'IAG. Pour modifier la configuration de l'application, dans l'onglet Aperçu, cliquez sur Protocole OpenID Connect pour ouvrir la fenêtre Modifier la configuration. Complétez le champ Redirect URIs et cliquez sur Save. Aucun des autres paramètres de la fenêtre Modifier la configuration ne doit être mis à jour.
L' URI de redirection est au format https://<iag>/pkmsoidc
.

L' URL métadonnées de l'OIDC pour PingOne est documentée dans le cadre de la référence API de la plate-forme PingOne Dans IAG, il s'agit de la valeur discovery_endpoint
.
Cette URL est une combinaison de :
- URL authPath spécifique à la région, établie lors de la création de l'abonnement PingOne.
- L' identifiant de l'environnement, qui est extrait de l'onglet Vue d'ensemble de l'application.
Le authPath de l'abonnement utilisé dans cet exemple de scénario est https://auth.pingone.asia
. L' identifiant d'environnement de l'application créée dans cet exemple de scénario est 43e8fbac-657d-4583-a8dc-cb0d7fea1ec8
.
Le format de l' URL métadonnées de l'OIDC est le suivant : <authPath>/<Environment ID>/as/.well-known/openid-configuration
.
Dans cet exemple de scénario, l' URL complète des métadonnées de l'OIDC est https://auth.pingone.asia/43e8fbac-657d-4583-a8dc-cb0d7fea1ec8/as/.well-known/openid-configuration
.
Étapes de la configuration de l'IAG
En utilisant les valeurs récupérées dans les étapes précédentes, terminez la configuration de l'IAG. L'exemple de configuration contient suffisamment d'informations pour permettre à IAG d'effectuer une connexion unique avec PingOne.
identity:
oidc:
discovery_endpoint: "https://auth.pingone.asia/43e8fbac-657d-4583-a8dc-cb0d7fea1ec8/as/.well-known/openid-configuration"
client_id: "c5683508-acee-4435-a871-2b7a19c86610"
client_secret: "zF57tApDDikZqg7Zj2kMARYHkzvr1cenWdBt_.tq8~xw-haIjXqZ0EuAgLodxRZD"
scopes:
- "email"
- "profile"
ssl:
certificate:
- "@pingone_ca.pem"
L'exemple de configuration contient une entrée identity/oidc/ssl/certificate. Il s'agit d'une partie facultative de la configuration OIDC de l'IAG, qui est nécessaire pour PingOn, car les certificats d'autorité de certification par défaut fournis avec l'IAG ne contiennent pas les autorités de certification signataires racine de confiance utilisées pour les métadonnées et les points d'extrémité des jetons de PingOne. Ils doivent être ajoutés manuellement.
Pour récupérer les données du certificat, naviguez jusqu'à l' URL des métadonnées de l'OIDC et téléchargez les certificats de l'autorité de certification racine et intermédiaire. Les certificats racine et intermédiaire au format PEM sont concaténés dans un seul fichier nommé pingone_ca.pem
. Au moment de la rédaction du présent document, le contenu de pingone_ca.pem
est le suivant :
-----BEGIN CERTIFICATE-----
MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF
ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6
b24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL
MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv
b3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj
ca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM
9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw
IFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6
VOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L
93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm
jgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC
AYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA
A4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI
U5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs
N+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv
o/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU
5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy
rqXRfboQnoZsG4q5WTP468SQvvG5
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIEXjCCA0agAwIBAgITB3MSSkvL1E7HtTvq8ZSELToPoTANBgkqhkiG9w0BAQsF
ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6
b24gUm9vdCBDQSAxMB4XDTIyMDgyMzIyMjUzMFoXDTMwMDgyMzIyMjUzMFowPDEL
MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEcMBoGA1UEAxMTQW1hem9uIFJT
QSAyMDQ4IE0wMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALtDGMZa
qHneKei1by6+pUPPLljTB143Si6VpEWPc6mSkFhZb/6qrkZyoHlQLbDYnI2D7hD0
sdzEqfnuAjIsuXQLG3A8TvX6V3oFNBFVe8NlLJHvBseKY88saLwufxkZVwk74g4n
WlNMXzla9Y5F3wwRHwMVH443xGz6UtGSZSqQ94eFx5X7Tlqt8whi8qCaKdZ5rNak
+r9nUThOeClqFd4oXych//Rc7Y0eX1KNWHYSI1Nk31mYgiK3JvH063g+K9tHA63Z
eTgKgndlh+WI+zv7i44HepRZjA1FYwYZ9Vv/9UkC5Yz8/yU65fgjaE+wVHM4e/Yy
C2osrPWE7gJ+dXMCAwEAAaOCAVowggFWMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYD
VR0PAQH/BAQDAgGGMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAdBgNV
HQ4EFgQUwDFSzVpQw4J8dHHOy+mc+XrrguIwHwYDVR0jBBgwFoAUhBjMhTTsvAyU
lC4IWZzHshBOCggwewYIKwYBBQUHAQEEbzBtMC8GCCsGAQUFBzABhiNodHRwOi8v
b2NzcC5yb290Y2ExLmFtYXpvbnRydXN0LmNvbTA6BggrBgEFBQcwAoYuaHR0cDov
L2NydC5yb290Y2ExLmFtYXpvbnRydXN0LmNvbS9yb290Y2ExLmNlcjA/BgNVHR8E
ODA2MDSgMqAwhi5odHRwOi8vY3JsLnJvb3RjYTEuYW1hem9udHJ1c3QuY29tL3Jv
b3RjYTEuY3JsMBMGA1UdIAQMMAowCAYGZ4EMAQIBMA0GCSqGSIb3DQEBCwUAA4IB
AQAtTi6Fs0Azfi+iwm7jrz+CSxHH+uHl7Law3MQSXVtR8RV53PtR6r/6gNpqlzdo
Zq4FKbADi1v9Bun8RY8D51uedRfjsbeodizeBB8nXmeyD33Ep7VATj4ozcd31YFV
fgRhvTSxNrrTlNpWkUk0m3BMPv8sg381HhA6uEYokE5q9uws/3YkKqRiEz3TsaWm
JqIRZhMbgAfp7O7FUwFIb7UIspogZSKxPIWJpxiPo3TcBambbVtQOcNRWz5qCQdD
slI2yayq0n2TXoHyNCLEH8rpsJRVILFsg0jc7BaFrMnF462+ajSehgj12IidNeRN
4zl+EoNaWdpnWndvSpAEkq2P
-----END CERTIFICATE-----
Cette technique permet de s'assurer que l'IAG se connecte à des URL de serveurs de fournisseurs OIDC fiables. Si les certificats de signature du serveur TLS requis ne sont pas connus de l'IAG, le journal de l'IAG produit un message d'erreur lors d'une tentative de récupération de l' URL des métadonnées.
DPWIV1228W IAG could not establish a secure connection to the server, auth.pingone.asia, for the default junction (Function call: gsk_secure_soc_init; failed error: 0x19e GSK_ERROR_BAD_CERT).
2023-10-05-03:34:14.234+00:00I----- 0x38983425 iag ERROR wad general AMWJsonClient.cpp 706 0xffffae14e1c0
DPWAD1061E Failed to connect to the server: auth.pingone.asia:443.
Pour plus d'informations, voir Gestion des certificats.
Configuration supplémentaire
Fournir des attributs d'utilisateur supplémentaires dans l'id_token
Une application protégée nécessite souvent des attributs d'utilisateur supplémentaires de la part du fournisseur d'identité tiers. Les attributs de l'utilisateur doivent être transmis à IAG en tant que revendications dans l'id_token.
Pour configurer des attributs supplémentaires dans PingOne, accédez à l'onglet Attribute Mappings et cliquez sur Add. Remplissez le champ Attributs et sélectionnez le mappage PingOne approprié pour l'attribut. Cliquez sur Enregistrer une fois que tous les attributs requis ont été ajoutés.
Cet exemple illustre l'ajout des attributs email et nom d'utilisateur préféré.

Test de l'intégration PingOne
Pour tester la configuration :
-
Accédez à l'application IAG credential viewer. Pour plus d'informations, voir Configuration commune de l'IAG pour des informations sur cette URL. Dans cet exemple, l' URL est
https://www.mysp.ibm.com:8443/ivcreds
.
[block:image]
{
"images": [
{
"image": [
"https://files.readme.io/dbf8bd7-ping-one-results-1.png",
"dbf8bd7-ping-one-results-1.png",
972,
275,
"#000000",
null,
"6633526a66a5940059febd0b"
]
}
]
}
[/block] -
Le navigateur est redirigé vers PingOne pour l'authentification. Le navigateur sera renvoyé à l'application de visualisation des informations d'identification une fois l'authentification terminée.
[block:image]
{
"images": [
{
"image": [
"https://files.readme.io/b3e2da6-ping-one-results-2.png",
"b3e2da6-ping-one-results-2.png",
395,
372,
"#000000",
null,
"6633526abd405300149005ac"
]
}
]
}
[/block] -
L'application de visualisation des informations d'identification s'affiche. Observez que les attributs
id_token
configurés (voir Fournir des attributs utilisateur supplémentaires dans l'id_token ) sont affichés.
[block:image]
{
"images": [
{
"image": [
"https://files.readme.io/f0bb7c5-ping-one-results-3.png",
"f0bb7c5-ping-one-results-3.png",
748,
718,
"#000000",
null,
"6633526bfbc04b002b0a6b25"
]
}
]
}
[/block]
Updated about 1 month ago