web-dev-qa-db-fra.com

à quoi fait référence "serviceAccountKey.json" dans le didacticiel sur les notifications de périphérique à périphérique de Firebase

J'ai réussi à parcourir l'intégralité de Firebase Android Codelab sans trop de problème, l'application fonctionne parfaitement. Maintenant, je voudrais ajouter des notifications d'appareil à appareil. Je trouvé ce tutoriel : Et certaines choses ne sont pas claires pour moi.

  1. Dans le script de noeud, il y a une ligne comme celle-ci:

var serviceAccount = require("path/to/serviceAccountKey.json");

Qu'est-ce que le fichier "ServiceAccountKey.json"? Est-ce juste un autre nom pour google-services.json? Sinon, qu'est-ce que c'est?

  1. Existe-t-il un simple didacticiel "cliquez sur" pour déployer le code du serveur de nœuds dans l'environnement Google?
27
Entman

Dans le billet de blog que vous suivez, nous exécutons le script node.js sur l'environnement flexible App Engine de Google Cloud à l'aide du SDK Admin Firebase. Un compte de service est un moyen de donner aux processus de confiance un accès aux ressources Google Cloud Platform et Firebase.

Vous créez un compte de service via la console Google Cloud puis téléchargez le fichier JSON correspondant. Le code dans le billet de blog recherche ce fichier et l'utilise pour initialiser le SDK Admin Firebase.

17
Frank van Puffelen

Merci et continue Réponse de Frank .. voici quelques observations supplémentaires

1. serviceAccountKey.json n'est pas le nom réel du fichier

Venant du travail du côté client Android côté client, je pensais que c'était un nom fixe comme google-services.json se trouve dans le projet Android. Cependant, il s'agit simplement d'un nom d'espace réservé. Le fichier est généré avec un nom unique à partir de l'interface utilisateur Web de Google, et c'est le fichier à appliquer là où le l'espace réservé est référencé.


2. Vous ne pouvez obtenir le fichier qu'une seule fois

En parcourant les documents là-bas, j'ai pensé que vous pourriez peut-être utiliser un compte de service existant pour obtenir ce fichier. Cependant, après quelques recherches, j'ai essayé d'en créer un nouveau et à partir de la boîte de dialogue qu'il contient, la case à cocher nous indique que vous ne pouvez obtenir ce fichier .json qu'une seule fois - au moment où l'élément de compte de service est créé.

Les docs discutent de la création d'un compte de service, mais je n'ai pas vu grand-chose d'autre pour obtenir ce fichier .json.

enter image description here


3. L'écran où vous ajoutez un nouveau compte de service

Cette interface d'administration a beaucoup de choses à faire, y compris dans les documents une variété de références pour aller à la configuration IAM, aux rôles, etc.

Au risque d'indiquer l'évidence (mais peut aider quelqu'un d'autre à arriver ici plus vite que moi), - c'était la vue où j'ajoute le Service Acct et j'obtiens la boîte de dialogue pour télécharger le .json fichier.

enter image description here

11
Gene Bo

Jetez un oeil à ce commentaire

https://stackoverflow.com/a/49039675/2472466

  1. en un mot, vous générez le fichier 'serviceAccountKey.json' en demandant une nouvelle clé privée à partir de l'onglet des comptes de service de votre page de paramètres dans votre tableau de bord Firebase.

  2. La clé privée retournée sera un fichier .json qui sera votre fichier 'serviceAccountKey.json' ... une fois que vous le renommerez en 'serviceAccountKey.json'

  3. le 'chemin/vers /' est le répertoire où vous stockez le fichier json retourné, ce répertoire doit être dans votre projet firebase

7
t.ios

C'est assez déroutant, mais vous devrez d'abord générer un compte de service à partir de Google IAM . Une fois que vous avez créé le compte de service, faites un clic droit sur les trois points et sélectionnez "créer une clé". Il devrait vous inviter avec l'option JSON. Téléchargez-le et stockez-le dans le répertoire de votre projet.

3
IVI