diff --git a/model/adrs/ADR005_USER_ROLES b/model/adrs/ADR005_USER_ROLES index 6b24cac..4c6d190 100644 --- a/model/adrs/ADR005_USER_ROLES +++ b/model/adrs/ADR005_USER_ROLES @@ -2,14 +2,15 @@ ## User Roles -Authenticate user actions - don't want users editing or deleting content of other users. +Implementing authentication of user actions. Every post/ patch/ edit action will be associated with a user ID. ## Options -- Add options here +- Implement user roles in the database + - Regular user and Admin user roles +- Not implementing roles ## Outcome -user or admin. - -By implementing this ADR, we can ensure that users are only able to edit or delete their own content or content they are allowed to edit. This will prevent unauthorized users from making changes to the database. Frontend authentication handled by Auth0. Backend user table added to track user IDs and associate with comments. \ No newline at end of file +By implementing this ADR, we can ensure that users are only able to edit or delete their own content or content they are allowed to edit. This will prevent unauthorized users from making changes to the database. Frontend authentication handled by Auth0. Backend user table added to track user IDs and associate with comments. +An improvement we could make is utilising auth0 custom roles/ metadata to manage user roles. This would allow us to manage users completely through auth0 instead of handling it in our backend. diff --git a/model/adrs/ADR006_LOAD_BALANCERS b/model/adrs/ADR006_LOAD_BALANCERS index cfcc337..b33a055 100644 --- a/model/adrs/ADR006_LOAD_BALANCERS +++ b/model/adrs/ADR006_LOAD_BALANCERS @@ -3,11 +3,13 @@ ## Load Balancer putting lb in front of backend. allows availability. +This ADR is about putting a lb in front of the backend ## Options -- Add options here +- Leaving the frontend directly connected to the backend +- Connecting the frontend to backend LB which is then forwarding to the backend ## Outcome -our layered architecture is more available. \ No newline at end of file +By implementing this we have increased the availability of our system. Prior to this, if the backend went down we needed to run a full teardown of the entire system so that the frontend could be passed the link to the backend. By using a lb in between the frontend and backend, we do not need to do this. The frontend can be passed the link to the lb and the lb can be passed the link to the backend. This means that if the backend goes down, the autoscaling group can recover it and no other services will need to be restarted.