Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Authentication via keys or tokens #291

Closed
joshkoenig opened this issue Jul 21, 2015 · 2 comments
Closed

Authentication via keys or tokens #291

joshkoenig opened this issue Jul 21, 2015 · 2 comments

Comments

@joshkoenig
Copy link
Member

Terminus currently authenticates using the same HTTP service as the dashboard, which has a number of shortcomings:

Implementing an alternative authentication mechanism will require work on the platform side, but we have to go down this path to support all our users.

@joshkoenig
Copy link
Member Author

I graphed up a little diagram of out I think the authentication flow would work for a user.

terminus x509 flow 1

The flow would be like:

  1. User issues the terminus setup command.
  2. This prompts them for their account email address, password, and "app label" (defaults to "terminus on (local machinename))
  3. This POSTs to Hermes, which authenticates the request and gets Pantheon PKI to generate a new x509 certificate for the user.
  4. That cert is returned to the client, where it's stored on the filesystem in a default path for subsequent requests.
  5. On the dashboard, the certs issued can be viewed by date and label.
  6. Dashboard allows you to re-label (for sanity), as well as re-download and revoke certs.
  7. Dashboard also allows you to generate a new cert (e.g. for doing CI work)
  8. Terminus can take a command line flag (e.g. --identity-cert=/path/to/identity.pem) or read some configuration option to use a cert other than the one in the default location.

@TeslaDethray
Copy link
Contributor

This is being addressed with the Auth0 implementation. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants