Passer au contenu principal

Conception > Authentification > Comptes partagés

Les comptes partagés permettent aux profils d'une application (le parent) d'être utilisés comme authentification pour une deuxième application (enfant).

Jason Liang avatar
Écrit par Jason Liang
Mis à jour cette semaine

La fonctionnalité "Comptes partagés" illustre parfaitement la flexibilité de l'architecture d'authentification de brainCloud. brainCloud propose déjà une multitude d'options d'authentification : anonyme, adresse e-mail, identifiant Facebook, identifiant Google, GameCenter, Twitter, etc. brainCloud peut même authentifier les usagers via des annuaires externes grâce à notre fonctionnalité d'authentification externe. Les comptes partagés vont encore plus loin en vous permettant de créer un système de comptes partagés unique permettant à vos usagers d'accéder à toutes les applications de l'entreprise (ou à une sélection d'entre elles). Vous disposerez ainsi d'un référentiel unique pour vos usagers, quelle que soit l'application qu'ils utilisent. Cette fonctionnalité est utile pour proposer des fonctionnalités communes et partagées à toutes les applications, comme des devises premium partagées, des classements de méta-niveaux, des succès, etc. – tout ce que vous souhaitez. Pour plus d'informations, veuillez consulter notre documentation "Comptes partagés" .

Définir l'application parentale

  • Pour commencer, à partir de la page Équipe > Gérer > Apps du portail , sélectionnez ou créez une nouvelle application en tant qu'application parent, puis accédez à la page Conception > Authentification > Comptes partagés.

  • Cochez la case [Peux être un parent] , saisissez un nom pour l'identifiant de cette application parent et cliquez sur Sauvegarder .

Définir l'application enfant

  • Sélectionnez une application existante ou créez une application en tant qu'application enfant à partir de la page Équipe > Gérer > Apps du portail , puis accédez à la page Conception > Authentification > Comptes partagés de cette application .

  • Cochez la case [Est un enfant de] , sélectionnez une application parent dans le menu déroulant et cliquez sur Sauvegarder .

Authentification des usagers

  • Revenez à l'application parente et accédez à la page Conception > Cloud Code > Explorateur d'API , puis utilisez le service d'authentification de l'Explorateur d'API pour authentifier un usager dans l'application parente.

  • Sélectionnez le Identity Service et l'API SwitchToChildProfile(), ensuite placez l'appId enfant dans le paramètre correspondant et cliquez sur Exécuter.

  • Revenez à l'application enfant et accédez à la page Usagers > Résumé > Résumé de l'usager pour vérifier cet usager nouvellement créé sur l'application enfant.

Appeler les API

  • Cliquez sur le bouton [Se connecter en tant qu'usager] à côté de l'image de l'avatar qui vous redirigera vers la page Conception > Code Cloud > Explorateur d'API . Vous êtes maintenant prêt à utiliser l'API. Explorez tous les appels d'API qui se comportent de la même manière que pour toute autre application brainCloud.

  • Vérifiez la monnaie virtuelle de cet usager actuel sur la page Usager > Marché > Devises virtuelle , vous trouverez les devises de l'usager correspondant dans l'application parent.

  • Revenez à la page Conception > Code Cloud > Explorateur d'API et vérifiez l'état actuel de l'usager en appelant ReadUserState() pour la comparaison ultérieure après le passage à l'usager parent. Comme vous pouvez le constater, un champ parentCurrency supplémentaire s'affiche dans la réponse pour cet usager avec un profil parent.

  • Restez sur la même page, appelez l'API SwitchToParentProfile() du service Identity, puis appelez à nouveau ReadUserState() pour comparer les résultats obtenus. Comme vous pouvez le constater, nous sommes maintenant sur l'application parente ! Ainsi, tout ce que vous faites ici est identique à celui de l'application parente.

  • Appelez l’API GetChildProfiles() du service Identity pour afficher la liste des profils enfants liés à cet usager parent.

  • Testez l'augmentation des statistiques utilisateur en appelant l'API IncrementUserStats(), en définissant la paire nom/valeur des statistiques comme paramètre et en visualisant le résultat. Notez que ces statistiques existent dans l'application parente.

  • L'appel de l'API SwitchToChildProfile() du service Identity permet de revenir au niveau usager actuel à tout moment.

  • Appelez l'API GetCurrency() du service Product pour vérifier les soldes de devises actuels de cet usager enfant et de l'usager parent associé. (mettez null pour le type de devise).

  • Avec cet usager enfant actuel, vous pouvez appeler des scripts parents en appelant l'API RunParentScript() du service ScriptService, ce script appelable par le client sera exécuté en tant qu'usager parent correspondant.

Remarque : brainCloud ajustera automatiquement le contexte du serveur pour rendre le profil parent approprié (tel qu'identifié par <app_level> actuel avant l'exécution du script) et le ramènera au niveau d'application précédent une fois le script terminé.

Quelques autres appels d'API peuvent être appelés directement depuis l'application enfant vers le niveau de l'application parent sans appeler SwitchToParentProfile() :

  • AwardParentCurrency () – vous permet d'incrémenter le solde de devise de la devise parent spécifiée

  • ConsumeParentCurrency () – vous permet de décrémenter le solde de la devise parent spécifiée

  • GetParentCurrency () – récupère le solde actuel de la devise parent spécifiée (remarque : également renvoyé dans Authentification et État du joueur)

  • ResetParentCurrency () – réinitialise tous les soldes de devises au niveau parent spécifié (principalement utile pour les tests/débogage)

Avez-vous trouvé la réponse à votre question ?