* feat(go): prevent removing idp integration when oauth user is superadmin.
* feat(go): add suggestion for user;
* feat(go): remove usages of boolean fields on user;
* feat(go): set boolean fields correctly, but don't use;
* fix(go): static issues;
* feat(go): add suggestion for user;
* feat(go): cleanup user extclients;
1. On disabling a user, remove all their extclients.
2. Add comments and rename variables to clarify the user group extclient cleanup function.
* feat(go): add checks for disable and enable user api;
* feat(go): refactor extclient cleanup on group network roles changes;
* feat(go): delete extclient on user group membership changes;
* add pending hosts apis, migration logic for network auto join field
* fix pending hosts logic on join
* delete pending hosts on host delete
* ignore pedning device request if host in the network already
* add peer update on host approval
* fix(go): permissions for network graph;
* fix(go): allow platform user to get network graph;
* feat(go): allow read only access to host resource to network users.
* feat(go): remove specific check for hosts resource.
* feat(go): add support for feature flags;
* feat(go): store feature flags in code;
* feat(go): report base domain on license validation;
* feat(go): remove nm base domain required binding;
* feat(go): add a flag for oauth support;
* feat(go): allow different session durations for client apps;
* feat(go): assume call is from netdesk app if header absent;
* feat(go): allow header;
* feat(go): set client jwt validity duration on migration.
* feat(go): add more refined event logs;
* feat(go): add more refined event logs;
* feat(go): add an api to validate user identity.
* feat(go): move validate-user-identity under user;
* feat(git): ignore run configurations;
* feat(go): add support for TOTP authentication;
* fix(go): api docs;
* fix(go): static checks failing;
* fix(go): ignore mfa enforcement for user auth;
* feat(go): allow resetting mfa;
* feat(go): allow resetting mfa;
* feat(go): use library function;
* fix(go): signature;
* feat(go): allow only master user to unset user's mfa;
* feat(go): set caller when master to prevent panic;
* feat(go): make messages more user friendly;
* fix(go): run go mod tidy;
* fix(go): optimize imports;
* fix(go): return unauthorized on token expiry;
* fix(go): move mfa endpoints under username;
* fix(go): set is mfa enabled when converting;
* feat(go): allow authenticated users to use preauth apis;
* feat(go): set correct header value;
* feat(go): allow super-admins and admins to unset mfa;
* feat(go): allow user to unset mfa if not enforced;
* revert inet gws from acl policies
* add egress range with metric for inet gw
* link pro inet funcs
* fix extclient comms with users
* remove TODO comments
* move relevant acl and tag code to CE and Pro pkgs
* intialise pro acl funcs
* list gateways by user access
* check user gw access by policies
* filter out user policies on CE
* filter out tagged policies on CE
* fix ce acl comms
* allow gateways tag
* allow gateway tag on CE, remove failover and gw check on acl policy
* add gw rules func to pro
* add inet gw support on CE
* add egress acl API
* add egress acl API
* fix(go): set is_gw when converting api node to server node;
* fix(go): set is_gw when converting api node to server node;
* fix policy validity checker for inet gws
* move dns option to host model
* fix node removal from egress policy on delete
* add migration logic for ManageDNS
* fix dns json field
* fix nil error on node tags
* add egress info to relayed nodes
* fix default network user policy
* fix egress migration
* fix egress migration
* add failover inet gw check
* optiomise egress calls
* auto create gw on inet egress node
* optimise egress calls
* add global user role check
* fix egress on inet gw
* remove addtional checks on inet policy
* add acl policy for static nodes on CE
* remove chained inet gws
* fix multi-inet issue
---------
Co-authored-by: Vishal Dalwadi <dalwadivishal26@gmail.com>
* move relevant acl and tag code to CE and Pro pkgs
* intialise pro acl funcs
* list gateways by user access
* check user gw access by policies
* filter out user policies on CE
* filter out tagged policies on CE
* fix ce acl comms
* allow gateways tag
* allow gateway tag on CE, remove failover and gw check on acl policy
* add gw rules func to pro
* add inet gw support on CE
* add egress acl API
* add egress acl API
* fix(go): set is_gw when converting api node to server node;
* fix(go): set is_gw when converting api node to server node;
* fix policy validity checker for inet gws
* move dns option to host model
* fix node removal from egress policy on delete
* add migration logic for ManageDNS
* fix dns json field
* fix nil error on node tags
* add egress info to relayed nodes
* fix default network user policy
* fix egress migration
* fix egress migration
* add failover inet gw check
* optiomise egress calls
* auto create gw on inet egress node
* optimise egress calls
* add global user role check
* fix egress on inet gw
---------
Co-authored-by: Vishal Dalwadi <dalwadivishal26@gmail.com>
* move relevant acl and tag code to CE and Pro pkgs
* intialise pro acl funcs
* list gateways by user access
* check user gw access by policies
* filter out user policies on CE
* filter out tagged policies on CE
* fix ce acl comms
* allow gateways tag
* allow gateway tag on CE, remove failover and gw check on acl policy
* add gw rules func to pro
* add inet gw support on CE
* add egress acl API
* add egress acl API
* fix(go): set is_gw when converting api node to server node;
* fix(go): set is_gw when converting api node to server node;
* fix policy validity checker for inet gws
* move dns option to host model
* fix node removal from egress policy on delete
* add migration logic for ManageDNS
* fix dns json field
* fix nil error on node tags
* add egress info to relayed nodes
* fix default network user policy
* fix egress migration
* fix egress migration
* add failover inet gw check
* optiomise egress calls
* auto create gw on inet egress node
* optimise egress calls
* add global user role check
---------
Co-authored-by: Vishal Dalwadi <dalwadivishal26@gmail.com>
* move relevant acl and tag code to CE and Pro pkgs
* intialise pro acl funcs
* list gateways by user access
* check user gw access by policies
* filter out user policies on CE
* filter out tagged policies on CE
* fix ce acl comms
* allow gateways tag
* allow gateway tag on CE, remove failover and gw check on acl policy
* add gw rules func to pro
* add inet gw support on CE
* add egress acl API
* add egress acl API
* fix(go): set is_gw when converting api node to server node;
* fix(go): set is_gw when converting api node to server node;
* fix policy validity checker for inet gws
* move dns option to host model
* fix node removal from egress policy on delete
* add migration logic for ManageDNS
* fix dns json field
* fix nil error on node tags
* add egress info to relayed nodes
---------
Co-authored-by: Vishal Dalwadi <dalwadivishal26@gmail.com>