2

Dans mon application, je n'ai pas de connexion utilisateur, mais je veux sécuriser mes données Firebase. J'utilise pour ce générateur de jeton Firebase - PHP. L'accès à la base de données est comme la roulette russe. Une fois que j'ai les permissions, une fois pas quand je rafraîchis la page.Firebase Authentification JWT

ici est mon jeton fichier générateur:

<?php 
    require_once 'vendor/autoload.php'; 

    use Firebase\Token\TokenException; 
    use Firebase\Token\TokenGenerator; 

    try { 
     $generator = new TokenGenerator('Firebase-Secret'); 
     $token = $generator 
      ->setData(array('uid' => '123')) 
      ->setOption('admin', true) 
      ->create(); 
    } catch (TokenException $e) { 
     echo "Error: ".$e->getMessage(); 
    } 

    echo $token; 

?> 

ici est index.php:

<script>var token = "<?= include_once 'getToken.php' ?>";</script> 

$(document).ready(function(){ 

     firebaseRef.authWithCustomToken(token, function(error, authData) { 
      console.log(authData) 
     }, {remember: "sessionOnly" }); 


      // do something 
}) 
+0

Bienvenue chez SO. Y a-t-il une question réelle là-dedans? Je ne vois aucun point d'interrogation. En outre, si vous avez plus d'informations, allez-y et éditez l'original. http://stackoverflow.com/tour –

Répondre

1

À l'avenir, s'il vous plaît inclure un minimal, complete repro pour vos problèmes de débogage. Très probablement, vous rencontrez asynchronous issues. Votre code //do something doit probablement passer dans le rappel pour auth.

$(document).ready(function(){ 
    firebaseRef.authWithCustomToken(token, function(error, authData) { 
     console.log(authData); 

     if(!error) { 
     // run your authenticated code here 
     } 

    }, {remember: "sessionOnly" }); 

    // trying to run something here that requires auth will 
    // be non-deterministic 

}); 
+0

J'ai essayé de m'authentifier avant que le jeton ne soit généré, maintenant je reçois le jeton par ajax et auth dans .done() – Michalk