netbird/management/server
Misha Bragin 3fc89749c1
Add peer login expiration (#682)
This PR adds a peer login expiration logic that requires
peers created by a user to re-authenticate (re-login) after
a certain threshold of time (24h by default).

The Account object now has a PeerLoginExpiration
property that indicates the duration after which a peer's
login will expire and a login will be required. Defaults to 24h.

There are two new properties added to the Peer object:
LastLogin that indicates the last time peer successfully used
the Login gRPC endpoint and LoginExpirationEnabled that
enables/disables peer login expiration.

The login expiration logic applies only to peers that were created
by a user and not those that were added with a setup key.
2023-02-13 12:21:02 +01:00
..
activity Add more activity events (#663) 2023-01-25 16:29:59 +01:00
http Add GET peer HTTP API endpoint (#670) 2023-02-07 20:11:08 +01:00
idp Add IdP metrics (#521) 2022-10-22 13:29:39 +02:00
jwtclaims Feature: add custom id claim (#667) 2023-02-03 21:47:20 +01:00
metrics Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
mock_server Add peer login expiration (#682) 2023-02-13 12:21:02 +01:00
status Replace gRPC errors in business logic with internal ones (#558) 2022-11-11 20:36:45 +01:00
telemetry Add gRPC metrics (#522) 2022-10-22 15:06:54 +02:00
testdata Replace IP allocation logic (#342) 2022-05-29 22:43:39 +02:00
account_test.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
account.go Add peer login expiration (#682) 2023-02-13 12:21:02 +01:00
config.go Feature: add custom id claim (#667) 2023-02-03 21:47:20 +01:00
dns_test.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
dns.go Simplify event storing with one generic method (#662) 2023-01-24 10:17:24 +01:00
event_test.go Add system activity tracking and event store (#636) 2023-01-02 15:11:32 +01:00
event.go Simplify event storing with one generic method (#662) 2023-01-24 10:17:24 +01:00
file_store_test.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
file_store.go Add peer login expiration (#682) 2023-02-13 12:21:02 +01:00
group.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
grpcserver.go Add peer login expiration (#682) 2023-02-13 12:21:02 +01:00
management_proto_test.go Adding --external-ip-map and --dns-resolver-address and shorthand flags (#652) 2023-01-17 19:16:50 +01:00
management_suite_test.go Move management server to a separate directory (#67) 2021-07-24 16:14:29 +02:00
management_test.go Add system activity tracking and event store (#636) 2023-01-02 15:11:32 +01:00
nameserver_test.go Add more activity events (#663) 2023-01-25 16:29:59 +01:00
nameserver.go Add more activity events (#663) 2023-01-25 16:29:59 +01:00
network_test.go Replace IP allocation logic (#342) 2022-05-29 22:43:39 +02:00
network.go Replace gRPC errors in business logic with internal ones (#558) 2022-11-11 20:36:45 +01:00
peer_test.go Add peer login expiration (#682) 2023-02-13 12:21:02 +01:00
peer.go Add peer login expiration (#682) 2023-02-13 12:21:02 +01:00
route_test.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
route.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
rule.go Simplify event storing with one generic method (#662) 2023-01-24 10:17:24 +01:00
setupkey_test.go Simplify event storing with one generic method (#662) 2023-01-24 10:17:24 +01:00
setupkey.go Simplify event storing with one generic method (#662) 2023-01-24 10:17:24 +01:00
store.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
turncredentials_test.go Rename module to netbirdio/netbird (#288) 2022-03-26 12:08:54 +01:00
turncredentials.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
updatechannel_test.go Use select for turn credentials and peers update (#443) 2022-08-27 12:57:03 +02:00
updatechannel.go Use Peer.ID instead of Peer.Key as peer identifier (#664) 2023-02-03 10:33:28 +01:00
user.go Simplify event storing with one generic method (#662) 2023-01-24 10:17:24 +01:00