Context
We have a task to research OAuth2 authentication. We are coordinating with the upstream project and downstream stakeholders to make sure we understand what is involved with OAuth2 authentication and how it involves the Proxy.
Rationale
Users often need to authenticate when making API requests. By design, our Proxy layer is managing user authentication, by using API keys. However, API keys are deemed undesirable, and may be insecure.
OAuth2 is an alternative authentication mechanism that might prove to be more secure than, or at least a good option in comparison to, API keys.
Task
Create one or more sequence diagrams showing user authentication:
- API key directly to an API
- API key managed by a proxy layer
- OAuth2 directly to an API
- Oauth2 managed by a proxy layer
Deliverables
The outcome of this task should be to produce one or more sequence diagrams in SVG, and/or PNG format. The diagrams should be easy to modify and share, so we would like them to be generated from plain text.
The text and accompanying image(s) should be added to our documentation repository:
Examples
The following examples are to serve as a starting point:
Client->Proxy: Authenticate
Note right of Proxy: Generate session token
Proxy->Client: Return session token
Client->Proxy: Backend request (authenticated)
Note right of Proxy: Process request
Proxy-->Backend: Send request
Backend-->Proxy: Send response
Note right of Proxy: Process response
Proxy->Client: Send processed response

Resources
There is an online sequence diagram generator that takes structured text as input and outputs SVG.
Context
We have a task to research OAuth2 authentication. We are coordinating with the upstream project and downstream stakeholders to make sure we understand what is involved with OAuth2 authentication and how it involves the Proxy.
Rationale
Users often need to authenticate when making API requests. By design, our Proxy layer is managing user authentication, by using API keys. However, API keys are deemed undesirable, and may be insecure.
OAuth2 is an alternative authentication mechanism that might prove to be more secure than, or at least a good option in comparison to, API keys.
Task
Create one or more sequence diagrams showing user authentication:
Deliverables
The outcome of this task should be to produce one or more sequence diagrams in SVG, and/or PNG format. The diagrams should be easy to modify and share, so we would like them to be generated from plain text.
The text and accompanying image(s) should be added to our documentation repository:
Examples
The following examples are to serve as a starting point:
Resources
There is an online sequence diagram generator that takes structured text as input and outputs SVG.