When a user wants to get access to a specific route on an Angular application, Guards comes in action verifying accesses and validating if that user is authorized to get access to that route. Guards are services executed before a route is loaded implementing functions such as canActivate in order to validate access