Even though this can be implemented in parallel, pay attention to who is working on
MEN-5011, since you will need to coordinate.
- The client binds to a random port on localhost interface (should be above 10000, just to be sure)
- DBus endpoints GetJwtToken and JwtTokenStateChange return http://localhost:<PORT>.
- On this port, the client serves HTTP requests (not HTTPS), which are forwarded to the currently authenticated Mender server.
- Except for the protocol and host, all request and response data is preserved exactly as is in the forwarded call, including headers.
- The code for this needs to be in the github.com/mendersoftware/mender/authmanager package. See
- If this package has not been created yet, it is enough that the code is "ready for it" (put in its own file, ready to move; try not to use Mender client internals)
- The client itself does not need to connect to this endpoint yet (will be handled implicitly in
MEN-5011by switching over to call the DBus endpoints).
- Unit tests
- Feature branch: feature-unified_comms