Web Programming

Todo REST Service (Authentication)

The objective of this exercise is to secure the REST interface of a todo service using basic authentication.

Tasks

  1. Implement the UsersServlet that uses the user service to register a user in response to the REST request POST /api/users (see also OpenAPI specification).
  2. Implement the AuthenticationFilter that checks if each request related to todos contains a valid Authorization header and authenticates the corresponding user; if successful, the username is added to the request, otherwise the error response 401 (Unauthorized) is returned.
  3. Modify the TodosServlet so that it accesses the todos of the authenticated user.
  4. Use the Bruno utility to test the REST service.
  5. (Optional) Implement the AuthServlet that supports the REST request HEAD /api/auth which can be used for authenticating a user.
Solution