Skip to content
This repository was archived by the owner on May 29, 2024. It is now read-only.

Accept JWT authentication for agents #2

Closed
afandian opened this issue Oct 19, 2016 · 2 comments
Closed

Accept JWT authentication for agents #2

afandian opened this issue Oct 19, 2016 · 2 comments

Comments

@afandian
Copy link
Contributor

afandian commented Oct 19, 2016

Every Event must include a JWT token. This should be used to authorize the Events.

  • Allow configuration of more than one Token so that more than one party can authorize Agents
  • Send appropriate HTTP response when the Event fails due to authorization

Tokens should claim at least:

  • the source ID of the Agent
  • the issuer (DataCite or Crossref)
  • the source name

By including the source ID, we allow the Agent to issue subsequent modify stored events for Compliance reasons.

@mfenner
Copy link
Collaborator

mfenner commented Oct 19, 2016

I like the idea to put the message_envelope into a JWT token, but I am not sure whether this should include source name. Will the token be encrypted?

@afandian
Copy link
Contributor Author

To clarify, we have two things

  • source token, which is a GUID, in the envelope. This is public and identifies the agent
  • authentication token in the HTTP headers. This is secret and authorizes the agent.

I am suggesting that we use JWT for the authorization token. This includes claims for the source token.

I included the source token in the claim in the header so that an Agent has the authorization to delete an Event in future, see #6. The downside is one token per Agent or we make tokens with multiple claims.

afandian pushed a commit that referenced this issue Nov 23, 2016
@afandian afandian added this to the first-staging-rountrip milestone Nov 29, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants