Bethuel Mmbaga
11733fd718
[infrastructure] Improve domain, Docker Compose, and license validation in self-hosted scripts ( #7339 )
2026-08-28 18:11:57 +03:00
Bethuel Mmbaga
4a6efbb5fc
[infrastructure] Skip store migration for Postgres deployments ( #7207 )
2026-08-20 18:32:04 +03:00
Bethuel Mmbaga
40ac64bb4e
[misc] Move enterprise setup to Traefik and harden migration ( #7042 )
2026-08-05 19:38:02 +03:00
Bethuel Mmbaga
d4a4418969
[misc] Simplify enterprise bootstrap ( #6869 )
2026-07-23 12:41:13 +03:00
Bethuel Mmbaga
3be90f06b2
[management] Add peer expiration reason to activity meta ( #6619 )
2026-07-01 12:31:46 +03:00
Bethuel Mmbaga
5b5f11740a
[misc] Require on-premise EULA acceptance in enterprise scripts ( #6596 )
2026-06-30 11:34:23 +03:00
Bethuel Mmbaga
07101c59ac
[management] Reschedule inactivity expiration when a peer disconnects ( #6523 )
2026-06-23 17:44:32 +03:00
Bethuel Mmbaga
af3b7e4497
[misc] Add enterprise getting-started and migrate script ( #6501 )
2026-06-22 16:58:45 +03:00
Bethuel Mmbaga
cd777395f2
[management] Skip JWT group evaluation for embedded-IdP local users ( #6422 )
...
When JWT group sync is enabled with a restrictive JWTAllowGroups list, the local owner of an embedded-IdP (Dex) deployment can get locked out. The allow-groups check runs account-wide but local password users do not receive
external IdP group claims, so they can't satisfy the allowed list.
This skips JWT group evaluation for local Dex users so the restriction and JWT group sync continue to apply to external-IdP users as intended.
2026-06-15 12:01:54 +03:00
Bethuel Mmbaga
f3cdf163e1
[management] Export ResolveDomain ( #6334 )
2026-06-03 19:53:57 +03:00
Bethuel Mmbaga
e9dbf9db6f
[management] Extend combined server initialization ( #6156 )
2026-05-29 17:35:35 +03:00
Bethuel Mmbaga
14af179556
[management] Refactor management server bootstrap ( #6256 )
2026-05-26 17:44:28 +03:00
Bethuel Mmbaga
3c28d29725
[management] Map Entra oid claim as Dex user ID ( #6067 )
2026-05-05 18:12:18 +03:00
Bethuel Mmbaga
6262b0d841
[management] Track pending approval in peer event metadata ( #6040 )
2026-05-04 12:47:13 +03:00
Bethuel Mmbaga
df197d5001
[management] Prevent JWT reuse during peer login ( #6002 )
2026-04-29 15:04:27 +03:00
Bethuel Mmbaga
db44848e2d
[management] Drop netmap calculation on peer read ( #6006 )
2026-04-28 18:25:56 +03:00
Bethuel Mmbaga
6f0eff3ba0
[management] Handle single-string JWT group claim from IdPs ( #6014 )
2026-04-28 14:48:28 +03:00
Bethuel Mmbaga
f8745723fc
[management] Add Microsoft AD FS support for embedded Dex identity providers ( #6008 )
2026-04-28 12:42:19 +03:00
Bethuel Mmbaga
57b23c5b25
[management] Propagate context changes to upstream middleware ( #5956 )
2026-04-21 23:06:52 +03:00
Bethuel Mmbaga
08f624507d
[management] Enforce peer or peer groups requirement for network routers ( #5894 )
2026-04-16 13:12:19 +03:00
Bethuel Mmbaga
9d1a37c644
[management,client] Revert gRPC client secret removal ( #5781 )
...
* This reverts commit e5914e4e8b
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Deprecate client secret in proto
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix lint
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2026-04-02 18:21:00 +02:00
Bethuel Mmbaga
c2c6396a04
[management] Allow updating embedded IdP user name and email ( #5721 )
2026-04-02 13:02:10 +03:00
Bethuel Mmbaga
e5914e4e8b
[management,client] Remove client secret from gRPC auth flow ( #5751 )
...
Remove client secret from gRPC auth flow. The secret was originally included to support providers like Google Workspace that don't offer a proper PKCE flow, but this is no longer necessary with the embedded IdP. Deployments using such providers should migrate to the embedded IdP instead.
2026-03-31 18:50:49 +03:00
Bethuel Mmbaga
c919ea149e
[misc] Add missing OpenAPI definitions ( #5690 )
2026-03-30 11:20:17 +03:00
Bethuel Mmbaga
7be8752a00
[management] Add notification endpoints ( #5590 )
2026-03-26 18:26:33 +03:00
Bethuel Mmbaga
0af5a0441f
[management] Fix DNS label uniqueness check on peer rename ( #5679 )
2026-03-24 20:25:29 +03:00
Bethuel Mmbaga
0b329f7881
[management] Replace JumpCloud SDK with direct HTTP calls ( #5591 )
2026-03-24 13:21:42 +03:00
Bethuel Mmbaga
9a6a72e88e
[management] Fix user update permission validation ( #5441 )
2026-02-24 22:47:41 +03:00
Bethuel Mmbaga
afe6d9fca4
[management] Prevent deletion of groups linked to flow groups ( #5439 )
2026-02-24 21:19:43 +03:00
Bethuel Mmbaga
68c481fa44
[management] Move service reload outside transaction in account settings update ( #5325 )
...
Bug Fixes
Network and DNS updates now defer service and reverse-proxy reloads until after account updates complete, preventing inconsistent proxy state and race conditions.
Chores
Removed automatic peer/broadcast updates immediately following bulk service reloads.
Tests
Added a test ensuring network-range changes complete without deadlock.
2026-02-14 20:27:15 +01:00
Bethuel Mmbaga
d3eeb6d8ee
[misc] Add cloud api spec to public open api with rest client ( #5222 )
2026-02-13 15:08:47 +03:00
Bethuel Mmbaga
7ebf37ef20
[management] Enforce access control on accessible peers ( #5301 )
2026-02-13 12:46:43 +03:00
Bethuel Mmbaga
a1de2b8a98
[management] Move activity store encryption to shared crypt package ( #5111 )
2026-01-22 15:01:13 +03:00
Bethuel Mmbaga
8da23daae3
[management] Fix activity event initiator for user group changes ( #5152 )
2026-01-22 14:18:46 +03:00
Bethuel Mmbaga
067c77e49e
[management] Add custom dns zones ( #4849 )
2026-01-16 12:12:05 +03:00
Bethuel Mmbaga
00e2689ffb
[management] Fix race condition in experimental network map when deleting account ( #5064 )
2026-01-08 14:10:09 +03:00
Bethuel Mmbaga
20d6beff1b
[management] Increment network serial on peer update ( #5051 )
...
Increment the serial on peer update and prevent double serial increments and account updates when updating a user while there are peers set to expire
2026-01-07 14:59:49 +03:00
Bethuel Mmbaga
d35b7d675c
[management] Refactor integrated peer deletion ( #5042 )
2026-01-07 14:00:39 +03:00
Bethuel Mmbaga
7bb4fc3450
[management] Refactor integrated peer validator ( #5035 )
2026-01-05 20:55:22 +03:00
Bethuel Mmbaga
932c02eaab
[management] Approve all pending peers when peer approval is disabled ( #4806 )
2025-12-12 18:49:57 +03:00
Bethuel Mmbaga
031ab11178
[client] Remove select account prompt ( #4912 )
...
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2025-12-04 14:57:29 +01:00
Bethuel Mmbaga
27dd97c9c4
[management] Add support to disable geolocation service ( #4901 )
2025-12-03 14:45:59 +03:00
Bethuel Mmbaga
52948ccd61
[management] Add user created activity event ( #4893 )
2025-12-02 14:17:59 +03:00
Bethuel Mmbaga
f31bba87b4
[management] Preserve validator settings on account settings update ( #4862 )
2025-11-26 17:07:44 +03:00
Bethuel Mmbaga
7f08983207
Include expired and routing peers in DNS record filtering ( #4708 )
2025-10-27 22:16:17 +03:00
Bethuel Mmbaga
709e24eb6f
[signal] Fix HTTP/WebSocket proxy not using custom certificates ( #4644 )
...
This pull request fixes a bug where the HTTP/WebSocket proxy server was not using custom TLS certificates when provided via --cert-file and --cert-key flags. Previously, only the gRPC server had TLS enabled with custom certificates, while the HTTP/WebSocket proxy ran without TLS.
2025-10-24 15:40:20 +03:00
Bethuel Mmbaga
d80d47a469
[management] Add peer disapproval reason ( #4468 )
2025-10-22 12:46:22 +03:00
Bethuel Mmbaga
dc30dcacce
[management] Filter DNS records to include only peers to connect ( #4517 )
...
DNS record filtering to only include peers that a peer can connect to, reducing unnecessary DNS data in the peer's network map.
- Adds a new `filterZoneRecordsForPeers` function to filter DNS records based on peer connectivity
- Modifies `GetPeerNetworkMap` to use filtered DNS records instead of all records in the custom zone
- Includes comprehensive test coverage for the new filtering functionality
2025-09-18 18:57:07 +02:00
Bethuel Mmbaga
3130cce72d
[management] Add rule ID validation for policy updates ( #4499 )
2025-09-15 21:08:16 +03:00
Bethuel Mmbaga
cf7f6c355f
[misc] Remove default zitadel admin user in deployment script ( #4482 )
...
* Delete default zitadel-admin user during initialization
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2025-09-11 21:20:10 +02:00
Bethuel Mmbaga
5113c70943
[management] Extends integration and peers manager ( #4450 )
2025-09-06 13:13:49 +03:00
Bethuel Mmbaga
a8dcff69c2
[management] Add peers manager to integrations ( #4405 )
2025-09-04 23:07:03 +03:00
Bethuel Mmbaga
968d95698e
[management] Bump github.com/golang-jwt/jwt from 3.2.2+incompatible to 5.3.0 ( #4375 )
2025-08-21 15:02:51 +03:00
Bethuel Mmbaga
a4e8647aef
[management] Enable flow groups ( #4230 )
...
Adds the ability to limit traffic events logging to specific peer groups
2025-08-13 00:00:40 +03:00
Bethuel Mmbaga
a7af15c4fc
[management] Fix group resource count mismatch in policy ( #4182 )
2025-07-21 15:26:06 +03:00
Bethuel Mmbaga
969f1ed59a
[management] Remove deleted user peers from groups on user deletion ( #4121 )
...
Refactors peer deletion to centralize group cleanup logic, ensuring deleted peers are consistently removed from all groups in one place.
- Removed redundant group removal code from DefaultAccountManager.DeletePeer
- Added group removal logic inside deletePeers to handle both single and multiple peer deletions
2025-07-09 10:14:10 +03:00
Bethuel Mmbaga
8c09a55057
[management] Log user id on account mismatch ( #4101 )
2025-07-04 10:51:58 +03:00
Bethuel Mmbaga
e9016aecea
[management] Add backward compatibility for older clients without firewall rules port range support ( #4003 )
...
Adds backward compatibility for clients with versions prior to v0.48.0 that do not support port range firewall rules.
- Skips generation of firewall rules with multi-port ranges for older clients
- Preserves support for single-port ranges by treating them as individual port rules, ensuring compatibility with older clients
2025-06-19 13:07:06 +03:00
Bethuel Mmbaga
7c6b85b4cb
[management] Refactor routes to use store methods ( #2928 )
2025-06-18 16:40:29 +03:00
Bethuel Mmbaga
6d654acbad
[management] Persist peer flags in meta updates ( #3958 )
...
This PR adds persistence for peer feature flags when updating metadata, including equality checks, gRPC extraction, and corresponding unit tests.
- Introduce a new `Flags` struct with `isEqual` and incorporate it into `PeerSystemMeta`.
- Update `UpdateMetaIfNew` logic to consider flag changes.
- Extend gRPC server’s `extractPeerMeta` to populate `Flags` and add tests for `Flags.isEqual`.
2025-06-11 22:39:59 +02:00
Bethuel Mmbaga
0ad2590974
[misc] Push all docker images to ghcr in releases ( #3954 )
...
This PR refactors the release process to push all release images to the GitHub Container Registry.
Updated image naming in .goreleaser.yaml to include new registry references.
Added a GitHub Actions step in .github/workflows/release.yml to log in to the GitHub Container Registry.
2025-06-11 15:28:30 +02:00
Bethuel Mmbaga
4ee1635baa
[management] Propagate user groups when group propagation setting is re-enabled ( #3912 )
2025-06-11 14:32:16 +03:00
Bethuel Mmbaga
87376afd13
[management] Enable unidirectional rules for all port policy ( #3826 )
2025-06-10 18:02:45 +03:00
Bethuel Mmbaga
b76d9e8e9e
[management] Add support for port ranges in firewall rules ( #3823 )
2025-06-10 18:02:13 +03:00
Bethuel Mmbaga
de27d6df36
[management] Add account ID index to activity events ( #3946 )
2025-06-09 14:34:53 +03:00
Bethuel Mmbaga
b604c66140
[management] Add postgres support for activity event store ( #3890 )
2025-06-04 17:38:49 +03:00
Bethuel Mmbaga
2bef214cc0
[management] Fix user groups propagation ( #3902 )
2025-05-30 18:12:30 +03:00
Bethuel Mmbaga
684501fd35
[management] Prevent deletion of peers linked to network routers ( #3881 )
...
- Prevent deletion of peers linked to network routers
- Add API endpoint to list all network routers
2025-05-29 18:50:00 +03:00
Bethuel Mmbaga
a0d28f9851
[management] Reset test containers after cleanup ( #3885 )
2025-05-27 14:42:00 +03:00
Bethuel Mmbaga
5523040acd
[management] Add correlated network traffic event schema ( #3680 )
2025-05-27 13:47:53 +03:00
Bethuel Mmbaga
2a89d6e47a
[management] Extend nameserver match domain validation ( #3864 )
...
* Enhance match domain validation logic and add test cases
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* remove the leading dot and root dot support ns regex
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Remove support for wildcard ns match domain
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2025-05-22 23:16:19 +02:00
Bethuel Mmbaga
24f932b2ce
[management] Update traffic events pagination filters ( #3857 )
2025-05-22 16:28:14 +03:00
Bethuel Mmbaga
4785f23fc4
[management] Migrate events sqlite store to gorm ( #3837 )
2025-05-20 17:00:37 +03:00
Bethuel Mmbaga
0cd4b601c3
[management] Add connection type filter to Network Traffic API ( #3815 )
2025-05-14 11:15:50 +03:00
Bethuel Mmbaga
ebda0fc538
[management] Delete service users with account manager ( #3793 )
2025-05-06 17:31:03 +02:00
Bethuel Mmbaga
488e619ec7
[management] Add network traffic events pagination ( #3580 )
...
* Add network traffic events pagination schema
2025-04-30 11:51:40 +03:00
Bethuel Mmbaga
d8dc107bee
[management] Skip IdP cache warm-up on Redis if data exists ( #3733 )
...
* Add Redis cache check to skip warm-up on startup if cache is already populated
* Refactor Redis test container setup for reusability
2025-04-28 15:10:40 +03:00
Bethuel Mmbaga
34d86c5ab8
[management] Sync account peers on network router group changes ( #3573 )
...
- Updates account peers when a group linked to a network router is modified
- Prevents group deletion if it's still being used by any network router
2025-03-27 12:19:22 +01:00
Bethuel Mmbaga
82c12cc8ae
[management] Handle transaction error on peer deletion ( #3387 )
...
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2025-02-25 19:57:04 +00:00
Bethuel Mmbaga
8fb5a9ce11
[management] add batching support for SaveUsers and SaveGroups ( #3341 )
...
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2025-02-18 00:08:03 +01:00
4cdb2e533a
[management] Refactor users to use store methods ( #2917 )
...
* Refactor setup key handling to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add lock to get account groups
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add check for regular user
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* get only required groups for auto-group validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add account lock and return auto groups map on validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* refactor account peers update
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor groups to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* refactor GetGroupByID and add NewGroupNotFoundError
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add AddPeer and RemovePeer methods to Group struct
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Preserve store engine in SqlStore transactions
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Run groups ops in transaction
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix missing group removed from setup key activity
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor posture checks to remove get and save account
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix refactor
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix sonar
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Change setup key log level to debug for missing group
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Retrieve modified peers once for group events
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor policy get and save account to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Retrieve policy groups and posture checks once for validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix typo
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add policy tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor anyGroupHasPeers to retrieve all groups once
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor dns settings to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add account locking and merge group deletion methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor name server groups to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add peer store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor ephemeral peers
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add lock for peer store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor peer handlers
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor peer to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix typo
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add locks and remove log
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* run peer ops in transaction
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* remove duplicate store method
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix peer fields updated after save
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Use update strength and simplify check
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* prevent changing ruleID when not empty
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* prevent duplicate rules during updates
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix lint
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor auth middleware
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor account methods and mock
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor user and PAT handling
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Remove db query context and fix get user by id
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix database transaction locking issue
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Use UTC time in test
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add account locks
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix prevent users from creating PATs for other users
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add store locks and prevent fetching setup keys peers when retrieving user peers with empty userID
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add missing tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor test names and remove duplicate TestPostgresql_SavePeerStatus
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add account locks and remove redundant ephemeral check
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Retrieve all groups for peers and restrict groups for regular users
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix store tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* use account object to get validated peers
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Improve peer performance
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Get account direct from store without buffer
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add get peer groups tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Adjust benchmarks
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Adjust benchmarks
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* [management] Update benchmark workflow (#3181 )
* update local benchmark expectations
* update cloud expectations
* Add status error for generic result error
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Use integrated validator direct
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* update expectations
* update expectations
* update expectations
* Refactor peer scheduler to retry every 3 seconds on errors
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* update expectations
* fix validator
* fix validator
* fix validator
* update timeouts
* Refactor ToGroupsInfo to process slices of groups
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* update expectations
* update expectations
* update expectations
* Bump integrations version
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor GetValidatedPeers
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* go mod tidy
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Use peers and groups map for peers validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* remove mysql from api benchmark tests
* Fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix blocked db calls on user auto groups update
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* update expectations
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* update expectations
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Skip user check for system initiated peer deletion
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Remove context in db calls
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* update expectations
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* [management] Improve group peer/resource counting (#3192 )
* Fix sonar
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Adjust bench expectations
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Rename GetAccountInfoFromPAT to GetTokenInfo
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Remove global account lock for ListUsers
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* build userinfo after updating users in db
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* [management] Optimize user bulk deletion (#3315 )
* refactor building user infos
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* remove unused code
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor GetUsersFromAccount to return a map of UserInfo instead of a slice
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Export BuildUserInfosForAccount to account manager
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fetch account user info once for bulk users save
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Update user deletion expectations
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Set max open conns for activity store
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Update bench expectations
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
Co-authored-by: Pascal Fischer <32096965+pascal-fischer@users.noreply.github.com >
Co-authored-by: Pascal Fischer <pascal@netbird.io >
Co-authored-by: Pedro Costa <550684+pnmcosta@users.noreply.github.com >
2025-02-17 21:43:12 +03:00
Bethuel Mmbaga
1ad2cb5582
[management] Refactor peers to use store methods ( #2893 )
2025-01-20 18:41:46 +01:00
Bethuel Mmbaga
c01874e9ce
[management] Fix network migration issue in postgres ( #3198 )
...
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2025-01-17 14:00:46 +03:00
Bethuel Mmbaga
3fce8485bb
Enabled new network resource and router by default ( #3174 )
...
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2025-01-11 20:09:29 +01:00
Bethuel Mmbaga
168ea9560e
[Management] Send peer network map when SSH status is toggled ( #3172 )
2025-01-11 13:19:30 +01:00
Bethuel Mmbaga
409003b4f9
[management] Add support for disabling resources and routing peers in networks ( #3154 )
...
* sync openapi changes
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add option to disable network resource(s)
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add network resource enabled state from api
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add option to disable network router(s)
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* migrate old network resources and routers
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2025-01-08 19:35:57 +03:00
Bethuel Mmbaga
02a3feddb8
[management] Add MySQL Support ( #3108 )
...
* Add mysql store support
* Add support to disable activity events recording
2025-01-06 13:38:30 +01:00
Bethuel Mmbaga
2bdb4cb44a
[management] Preserve jwt groups when accessing API with PAT ( #3128 )
...
* Skip JWT group sync for token-based authentication
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2024-12-31 18:59:37 +03:00
Bethuel Mmbaga
445b626dc8
[management] Add missing group usage checks for network resources and routes access control ( #3117 )
...
* Prevent deletion of groups linked to routes access control groups
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Prevent deletion of groups linked to network resource
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2024-12-27 14:39:34 +03:00
Bethuel Mmbaga
7ee7ada273
[management] Fix duplicate resource routes when routing peer is part of the source group ( #3095 )
...
* Remove duplicate resource routes when routing peer is part of the source group
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2024-12-20 21:10:53 +03:00
Bethuel Mmbaga
97bb74f824
Remove peer login log ( #3005 )
...
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2024-12-09 18:40:06 +01:00
Bethuel Mmbaga
9683da54b0
[management] Refactor nameserver groups to use store methods ( #2888 )
2024-11-26 17:39:04 +01:00
Bethuel Mmbaga
0e48a772ff
[management] Refactor DNS settings to use store methods ( #2883 )
2024-11-26 13:43:05 +01:00
Bethuel Mmbaga
f118d81d32
[management] Refactor policy to use store methods ( #2878 )
2024-11-26 10:46:05 +01:00
Bethuel Mmbaga
ca12bc6953
[management] Refactor posture check to use store methods ( #2874 )
2024-11-25 16:26:24 +01:00
Bethuel Mmbaga
12f442439a
[management] Refactor group to use store methods ( #2867 )
...
* Refactor setup key handling to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add lock to get account groups
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add check for regular user
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* get only required groups for auto-group validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add account lock and return auto groups map on validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* refactor account peers update
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor groups to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* refactor GetGroupByID and add NewGroupNotFoundError
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add AddPeer and RemovePeer methods to Group struct
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Preserve store engine in SqlStore transactions
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Run groups ops in transaction
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix missing group removed from setup key activity
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix sonar
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Change setup key log level to debug for missing group
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Retrieve modified peers once for group events
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add account locking and merge group deletion methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2024-11-15 20:09:32 +03:00
Bethuel Mmbaga
6cb697eed6
[management] Refactor setup key to use store methods ( #2861 )
...
* Refactor setup key handling to use store methods
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add lock to get account groups
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add check for regular user
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* get only required groups for auto-group validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add account lock and return auto groups map on validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix missing group removed from setup key activity
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Remove context from DB queries
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Add user permission check and add setup events into events to store slice
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Retrieve all groups once during setup key auto-group validation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix lint
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix sonar
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2024-11-11 19:46:10 +03:00
Bethuel Mmbaga and Maycon Santos
7bda385e1b
[management] Optimize network map updates ( #2718 )
...
* Skip peer update on unchanged network map (#2236 )
* Enhance network updates by skipping unchanged messages
Optimizes the network update process
by skipping updates where no changes in the peer update message received.
* Add unit tests
* add locks
* Improve concurrency and update peer message handling
* Refactor account manager network update tests
* fix test
* Fix inverted network map update condition
* Add default group and policy to test data
* Run peer updates in a separate goroutine
* Refactor
* Refactor lock
* Fix peers update by including NetworkMap and posture Checks
* go mod tidy
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* [management] Skip account peers update if no changes affect peers (#2310 )
* Remove incrementing network serial and updating peers after group deletion
* Update account peer if posture check is linked to policy
* Remove account peers update on saving setup key
* Refactor group link checking into re-usable functions
* Add HasPeers function to group
* Refactor group management
* Optimize group change effects on account peers
* Update account peers if ns group has peers
* Refactor group changes
* Optimize account peers update in DNS settings
* Optimize update of account peers on jwt groups sync
* Refactor peer account updates for efficiency
* Optimize peer update on user deletion and changes
* Remove condition check for network serial update
* Optimize account peers updates on route changes
* Remove UpdatePeerSSHKey method
* Remove unused isPolicyRuleGroupsEmpty
* Add tests for peer update behavior on posture check changes
* Add tests for peer update behavior on policy changes
* Add tests for peer update behavior on group changes
* Add tests for peer update behavior on dns settings changes
* Refactor
* Add tests for peer update behavior on name server changes
* Add tests for peer update behavior on user changes
* Add tests for peer update behavior on route changes
* fix tests
* Add tests for peer update behavior on setup key changes
* Add tests for peer update behavior on peers changes
* fix merge
* Fix tests
* go mod tidy
* Add NameServer and Route comparators
* Update network map diff logic with custom comparators
* Add tests
* Refactor duplicate diff handling logic
* fix linter
* fix tests
* Refactor policy group handling and update logic.
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Update route check by checking if group has peers
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor posture check policy linking logic
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Simplify peer update condition in DNS management
Refactor the condition for updating account peers to remove redundant checks
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add policy tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add posture checks tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix user and setup key tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix account and route tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix typo
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix nameserver tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix routes tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix group tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* upgrade diff package
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix nameserver tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* use generic differ for netip.Addr and netip.Prefix
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* go mod tidy
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add peer tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix merge
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix management suite tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* fix postgres tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* enable diff nil structs comparison
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* skip the update only last sent the serial is larger
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* refactor peer and user
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* skip spell check for groupD
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Refactor group, ns group, policy and posture checks
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* skip spell check for GroupD
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* update account policy check before verifying policy status
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Update management/server/route_test.go
Co-authored-by: Maycon Santos <mlsmaycon@gmail.com >
* Update management/server/route_test.go
Co-authored-by: Maycon Santos <mlsmaycon@gmail.com >
* Update management/server/route_test.go
Co-authored-by: Maycon Santos <mlsmaycon@gmail.com >
* Update management/server/route_test.go
Co-authored-by: Maycon Santos <mlsmaycon@gmail.com >
* Update management/server/route_test.go
Co-authored-by: Maycon Santos <mlsmaycon@gmail.com >
* add tests missing tests for dns setting groups
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add tests for posture checks changes
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add ns group and policy tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add route and group tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* increase Linux test timeout to 10 minutes
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Run diff for client posture checks only
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* add panic recovery and detailed logging in peer update comparison
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
* Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
Co-authored-by: Maycon Santos <mlsmaycon@gmail.com >
---------
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
Co-authored-by: Maycon Santos <mlsmaycon@gmail.com >
2024-10-23 13:05:02 +03:00
Bethuel Mmbaga
0106a95f7a
lock account and use transaction ( #2767 )
...
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com >
2024-10-22 13:29:17 +03:00
Bethuel Mmbaga
96d2207684
Fix JSON function compatibility for SQLite and PostgreSQL ( #2746 )
...
resolves the issue with json_array_length compatibility between SQLite and PostgreSQL. It adjusts the query to conditionally cast types:
PostgreSQL: Casts to json with ::json.
SQLite: Uses the text representation directly.
2024-10-16 17:55:30 +02:00