Personnalisé
Vous pouvez utiliser un fournisseur d'identité personnalisé lors de l'authentification. Votre fournisseur d'identité peut se conformer à tout mécanisme d'authentification non spécifiquement pris en charge par IBM Cloud® App ID, y compris aux mécanismes propriétaires.
Lorsqu'App ID ne propose pas de prise en charge directe pour un fournisseur d'identité particulier, vous pouvez utiliser le flux d'identité personnalisé pour relier le protocole d'authentification au flux d'authentification existant d'App ID. Par exemple, vous pouvez utiliser GitHub ou LinkedIn pour autoriser vos utilisateurs à se connecter. Vous pouvez utiliser le logiciel SDK existant du fournisseur d'identité pour faciliter les informations d'authentification de l'utilisateur avant de les conditionner et de les échanger avec App ID. Dans de nombreux scénarios d'entreprise, un fournisseur d'identité existant peut utiliser son propre protocole d'authentification personnalisé, mais vous pouvez toujours exploiter les fonctionnalités d'App ID. Pour ce type de scénario, le flux d'identité personnalisé fournit un moyen découplé d'authentifier vos utilisateurs de manière sécurisée sans exposer leurs données d'identification.
Configuration de l'identité personnalisée
Vous pouvez utiliser les étapes suivantes pour configurer votre fournisseur d'identité personnalisé pour utiliser App ID.
Avant de commencer
Pour établir la confiance entre App ID et votre fournisseur d'identité personnalisé, vous devez disposer d'une paire de clés PEM RSA d'une longueur minimale de 2048 caractères. Assurez-vous de sauvegarder les clés que vous utilisez en production de manière sécurisée.
Comment les clés sont-elles utilisées ?
- Votre clé privée est utilisée dans votre application ou votre fournisseur d'identité pour signer les jetons JWT.
- Votre clé publique est utilisée par App ID pour valider le jeton JWT contenant des informations utilisateur.
Pour générer une paire de clés PEM RSA à l'aide d'Open SSL, exécutez la commande suivante :
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
openssl rsa -pubout -in private_key.pem -out public_key.pem
Configuration à l'aide de l'interface graphique
-
Connectez-vous à votre compte IBM Cloud et accédez à votre instance App ID.
-
Dans l'onglet Gérer, définissez Custom Identity Provider sur Activé.
-
Enregistrez votre clé publique dans App ID.
- Accédez à l'onglet Custom Identity Provider.
- Collez votre clé publique dans la zone Clé publique et cliquez sur Sauvegarder.
Configuration avec l'API
Enregistrez votre clé en envoyant une requête PUT au noeud final d'API de gestion.
Put <managementURI>/config/idps/custom
Content-Type: application/json
{
isActive: true,
config: {
publicKey: Your newline separated (\n) PEM public key
}
}
Test de votre configuration
Après avoir configuré votre instance App ID avec une clé publique valide, vous pouvez utiliser l'application de test fournie par le service pour vérifier que votre configuration est correcte. Dans l'exemple d'application, vous pouvez voir les contenus des jetons d'accès et d'identité d'App ID qui sont renvoyés lors d'un flux de connexion standard.
-
Dans l'onglet Custom Identity Provider, cliquez sur Test pour ouvrir l'application de test.
-
Créez un exemple de jeton JWT conformément au protocole d'identité personnalisée.
-
Collez votre jeton JWT dans la case intitulée Jeton Web JSON et cliquez sur Test pour exécuter un exemple d'authentification.
En cas de succès, vous pouvez voir les jetons d'identité et d'accès d'App ID décodés qui seront disponibles pour votre application dans un flux de connexion standard.
Etapes suivantes
Maintenant que votre fournisseur d'identité personnalisé est configuré, ajoutez-le à votre application !