Skip to content

Push key configuration documentation for ElasticBeanstalk #1798

Closed
@barnaclejive

Description

@barnaclejive

Request for additional documentation about best practices for push key installation and permissions when using ElasticBeanstalk.
For example, I'm not sure if I am placing the .p12 files in the correct location with the correct permissions for parse-server to use them. For security, it wouldn't be a good idea to bundle the keys with the application or even key locations in index.js. What I have done is create environment variables for the key locations

push: { ios: [ { pfx: process.env.MYAPP_PUSH_KEY_PATH_DEV, // Dev PFX or P12 bundleId: process.env.MYAPP_PUSH_BUNDLEID, production: false // Dev }, { pfx: process.env.MYAPP_PUSH_KEY_PATH_PROD, // Prod PFX or P12 bundleId: process.env.MYAPP_PUSH_BUNDLEID, production: true // Prod } ] }

Where the paths are set in the ElasticBeanstalk environment properties:

MYAPP_PUSH_KEY_PATH_DEV   /home/ec2-user/.ssh/myapp_push_key_dev.p12
MYAPP_PUSH_KEY_PATH_PROD   /home/ec2-user/.ssh/myapp_push_key_disb.p12
MYAPP_PUSH_BUNDLEID   com.foo.myapp

However, when I attempt to send a push notification, I am seeing a permission denied error in the npm-debug.log:

npm ERR! Linux 4.4.8-20.46.amzn1.x86_64
npm ERR! argv "/opt/elasticbeanstalk/node-install/node-v4.4.3-linux-x64/bin/node" "/opt/elasticbeanstalk/node-install/node-v4.4.3-linux-x64/bin/npm" "start"
npm ERR! node v4.4.3
npm ERR! npm v2.15.1
npm ERR! code ELIFECYCLE
npm ERR! [email protected] start: node index.js
npm ERR! Exit status 7
npm ERR!
npm ERR! Failed at the [email protected] start script 'node index.js'.
npm ERR! This is most likely a problem with the petfetch-server package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node index.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs petfetch-server
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!
npm ERR! npm owner ls petfetch-server
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! /var/app/current/npm-debug.log

[email protected] start /var/app/current
node index.js

parse-server-example running on port 8081.
/var/app/current/node_modules/parse-server/lib/ParseServer.js:339
throw err;
^

Error: EACCES: permission denied, open '/home/ec2-user/.ssh/myapp_push_key_disb.p12'
at Error (native)

I have tried giving the .p12 files 400, 644, and even 777 permissions but always get the access denied error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions