2014-07-23 1 views
0

j'ai créé des variables d'environnement pour travailler en toute sécurité avec collectionFS, ajouts S3.Meteor comment accéder en toute sécurité les variables d'environnement local (CollectionFS S3)

Pour accéder à ces variables, j'ai créé ce fichier sur le serveur: /server/lib/s3_keys.coffee

S3_keyId = process.env.S3_KEYID 
S3_secretId = process.env.S3_ACCESS_KEY 
Meteor.methods 
    s3_key: -> 
    if S3_keyId 
     S3_keyId 
    else 
     throw Error() 

    s3_secret: -> 
    if S3_secretId 
     S3_secretId 
    else 
     throw Error() 

Et j'accéder à mes clés comme tant sur le client:

@Images = new FS.Collection("images", 
    stores: [new FS.Store.S3("images", 
    accessKeyId: -> 
    Meteor.call(s3_key)#required if environment variables are not set 
    secretAccessKey: -> 
     Meteor.call(s3_secret)#required if environment variables are not set 
    bucket: "immondm" #required 
)] 
) 

est-ce la bonne façon de faire ou est-il une meilleure, plus sûre?

Répondre

0

Je ne l'ai pas encore utiliser S3 mais

  • Un magasin doit être défini sur le côté serveur, et non sur le côté client.
  • Meteor.methods sont appelés par le client, cela signifie même si vous ne pas afficher la réponse d'un appel à l'utilisateur, il est toujours possible de le montrer en appelant manuellement via la console Web.

Je pense que ce dont vous avez besoin est le suivant: link

0

Je me inquiète généralement quand hardcoding valeurs dans les fichiers source. Il y a un MongoDB disponible au sein de Meteor - peut être judicieux de le mettre dans une collection qui est accessible par le serveur?

Questions connexes