brainCloud permet l'authentification des utilisateurs via un annuaire externe. Cela se fait par l'implémentation d'un script personnalisé qui assure l'intégration entre brainCloud et l'annuaire externe.
Pour commencer, recherchez la page des identités externes sur le portail brainCloud .
Mise en œuvre
Pour créer une identité d'authentification externe, un script cloud non client doit être créé au préalable. BrainCloud l'utilisera pour accéder à votre service externe via une requête HTTP. Comme le code cloud appellera le service externe via httpClientSeviceProxy(), vous devez d'abord configurer votre service web externe.
Accédez à la page Conception > Code Cloud > Services Web, cliquez sur [+ Nouveau service], ajoutez votre URL de base externe et donnez-lui un nom.
Accédez à la page Conception > Code Cloud > Scripts et cliquez sur [+] pour créer un nouveau script.
"use strict";
function main() {
bridge.logDebugJson("postmanapikey inputs", data);
// Récupérer les paramètres d'entrée
bridge.logInfoJson("Received the postmanapikey script start...", data);
var apiToken = data.authenticationToken;
var externalId = data.externalId;
// Créer un proxy pour le service
var httpProxy = bridge.getHttpClientServiceProxy();
// Les valeurs de chemin correctes seront déterminées par votre API côté serveur
var path = "me";
// Créer un objet de requête vide
var query = {};
// Configurer l'en-tête, en fonction de votre côté serveur, comment impliquer l'authentification de l'expéditeur d'une requête et vérifier qu'il a l'autorisation d'accéder ou de manipuler les données pertinentes
var headers = {"x-api-key":apiToken};
// effectuer l'appel Web, postmanapi est défini dans l'onglet Services Web
var result = httpProxy.getResponseJson("postmanapi", path, query, headers);
bridge.logInfoJson("Received the postmanapikey script after getResponseJson...", result);
// évaluer le résultat et retourner
var retval = false;
var bcstatus = result.status;
// retval = result;
if (bcstatus === 200)
{
var bcdata = result.data;
var restStatus = bcdata.statusCode;
if (restStatus == 200)
{
var jsondata = bcdata.json;
//cela dépend de la façon dont votre serveur externe structure les données de réponse pour une utilisation authentifiée
var userid = jsondata.user.id;
retval = (userid == externalId);
// retval = bcdata;
}
}
return retval;
}
main();
Remarque : Les noms des paramètres d'entrée des données du script sont « externalId » et « authenticationToken ». Ces paramètres seront transmis au script par la méthode d'authentification de l'API client. Le script doit renvoyer une valeur booléenne « true » ou « false » pour indiquer la réussite ou l'échec.
Revenez maintenant à la page « Identité externe » . Cliquez sur le bouton [+] en haut à droite, saisissez un nom pour cette nouvelle identité, sélectionnez le script de code cloud externe que vous venez de créer dans la liste déroulante, puis cliquez sur « Enregistrer » .
Testez l'authentification externe sur API Explore, assurez-vous de mettre les bonnes informations comme ci-dessous et exécutez-la.
Si vous avez effectué cette opération correctement, vous devriez constater qu'un nouvel utilisateur est authentifié et vous pouvez vérifier les informations d'identification de cet utilisateur à partir de la page Utilisateur > Résumé > Résumé de l'utilisateur.