Nexmo / nexmo-cli

Nexmo CLI (Command Line Interface)
https://nexmo.com
MIT License
78 stars 52 forks source link

When creating an app the private key must be saved/displayed #25

Closed sammachin closed 8 years ago

sammachin commented 8 years ago

When I create an app the API responds with a private key, this is the only time that key is sent from Nexmo and can't be recorvered therefore it should be saved to a local file called something like [appid].key and a big red warning message displayed to the developer.

cbetta commented 8 years ago

I intentionally left this out for now as there's some issues we need to discuss.

In your initial spec you suggested saving it in a hidden folder in the user root. This seems unexpected and dangerous for a user! They might not understand that they have the private keys in the location and either leave themselves open to a security problem, or they might accidentally delete them.

Some questions:

I propose we:

sammachin commented 8 years ago

The keys are/will be used to generate JWTs to sign requests for a given app.

Eventually we will support account level keys on things like the developer API thats the only time i can see the CLI needing them, but at that point I think it would be a change to the nexmo setup flow.

Yeah I agree that putting them in a hidden folder is probabbly bad, the only platform I can think of that give users keys right now is AWS, IIRC they display the key on the page and give you an option to save, I propose this: When an app is created the key is always displayed (even on verbose) unless the user has specifid a --key option with a filename to save to eg: nexmo app:create "My Lovely App" http://example.com http://example.com --keyfile ./private.key

cbetta commented 8 years ago

Sounds good to me! Let's see if I can actually make the warning in RED as well.