Kristoffer Dalby
b92bd3d27e
remove oidc migration ( #2411 )
...
* remove oidc migration
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* update changelog
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
---------
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2025-02-07 13:49:45 +01:00
Nbelles
22277d1fc7
Spell check
Build / build-nix (push) Has been cancelled
Build / build-cross (GOARCH=386 GOOS=linux) (push) Has been cancelled
Build / build-cross (GOARCH=amd64 GOOS=darwin) (push) Has been cancelled
Build / build-cross (GOARCH=amd64 GOOS=linux) (push) Has been cancelled
Build / build-cross (GOARCH=arm GOOS=linux GOARM=5) (push) Has been cancelled
Build / build-cross (GOARCH=arm GOOS=linux GOARM=6) (push) Has been cancelled
Build / build-cross (GOARCH=arm GOOS=linux GOARM=7) (push) Has been cancelled
Build / build-cross (GOARCH=arm64 GOOS=darwin) (push) Has been cancelled
Build / build-cross (GOARCH=arm64 GOOS=linux) (push) Has been cancelled
Deploy docs / deploy (push) Has been cancelled
Tests / test (push) Has been cancelled
update-flake-lock / lockfile (push) Has been cancelled
GitHub Actions Version Updater / build (push) Has been cancelled
2025-02-05 17:29:30 +01:00
Kristoffer Dalby
1c7f3bc440
no edit of oidc users, minimum hostname length ( #2393 )
...
Build / build-nix (push) Waiting to run
Build / build-cross (GOARCH=386 GOOS=linux) (push) Waiting to run
Build / build-cross (GOARCH=amd64 GOOS=darwin) (push) Waiting to run
Build / build-cross (GOARCH=amd64 GOOS=linux) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=5) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=6) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=7) (push) Waiting to run
Build / build-cross (GOARCH=arm64 GOOS=darwin) (push) Waiting to run
Build / build-cross (GOARCH=arm64 GOOS=linux) (push) Waiting to run
Tests / test (push) Waiting to run
* return an error when renaming users from OIDC
* set minimum hostname length of 2
2025-02-01 09:40:37 +00:00
Kristoffer Dalby
4c8e847f47
use dedicated registration ID for auth flow ( #2337 )
Build / build-nix (push) Waiting to run
Build / build-cross (GOARCH=386 GOOS=linux) (push) Waiting to run
Build / build-cross (GOARCH=amd64 GOOS=darwin) (push) Waiting to run
Build / build-cross (GOARCH=amd64 GOOS=linux) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=5) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=6) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=7) (push) Waiting to run
Build / build-cross (GOARCH=arm64 GOOS=darwin) (push) Waiting to run
Build / build-cross (GOARCH=arm64 GOOS=linux) (push) Waiting to run
Tests / test (push) Waiting to run
2025-01-26 22:20:11 +01:00
Kristoffer Dalby
c1f42cdf4b
relax user validation to allow emails, add tests from various oidc providers ( #2364 )
...
Build / build-nix (push) Waiting to run
Build / build-cross (GOARCH=386 GOOS=linux) (push) Waiting to run
Build / build-cross (GOARCH=amd64 GOOS=darwin) (push) Waiting to run
Build / build-cross (GOARCH=amd64 GOOS=linux) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=5) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=6) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=7) (push) Waiting to run
Build / build-cross (GOARCH=arm64 GOOS=darwin) (push) Waiting to run
Build / build-cross (GOARCH=arm64 GOOS=linux) (push) Waiting to run
Tests / test (push) Waiting to run
* relax user validation to allow emails, add tests from various oidc providers
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* changelog
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
---------
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2025-01-22 18:10:15 +01:00
Kristoffer Dalby
38aef77e54
allow @ and Log if OIDC username is not consider valid ( #2340 )
2025-01-16 18:04:54 +01:00
Kristoffer Dalby
380fcdba17
Add worker reading extra_records_path from file ( #2271 )
...
Build / build-nix (push) Waiting to run
Build / build-cross (GOARCH=386 GOOS=linux) (push) Waiting to run
Build / build-cross (GOARCH=amd64 GOOS=darwin) (push) Waiting to run
Build / build-cross (GOARCH=amd64 GOOS=linux) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=5) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=6) (push) Waiting to run
Build / build-cross (GOARCH=arm GOOS=linux GOARM=7) (push) Waiting to run
Build / build-cross (GOARCH=arm64 GOOS=darwin) (push) Waiting to run
Build / build-cross (GOARCH=arm64 GOOS=linux) (push) Waiting to run
Tests / test (push) Waiting to run
* consolidate scheduled tasks into one goroutine
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* rename Tailcfg dns struct
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* add dns.extra_records_path option
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* prettier lint
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* go-fmt
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
---------
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2024-12-13 07:52:40 +00:00
Kristoffer Dalby
2fe65624c0
restore strip_email_domain for migration
...
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2024-11-23 21:14:55 +01:00
Kristoffer Dalby
a6b19e85db
more linter fixups ( #2212 )
...
* linter fixes
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* conf
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* update nix hash
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
---------
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2024-11-22 15:54:58 +00:00
hopleus
cc42fc394a
#2177 Added conversion of 'Hostname' to 'givenName' in a node with FQDN rules applied ( #2198 )
Build / build (push) Has been cancelled
Build documentation / build (push) Has been cancelled
Tests / test (push) Has been cancelled
Build documentation / deploy (push) Has been cancelled
2024-10-15 18:33:03 +02:00
Kristoffer Dalby
218138afee
Redo OIDC configuration ( #2020 )
...
expand user, add claims to user
This commit expands the user table with additional fields that
can be retrieved from OIDC providers (and other places) and
uses this data in various tailscale response objects if it is
available.
This is the beginning of implementing
https://docs.google.com/document/d/1X85PMxIaVWDF6T_UPji3OeeUqVBcGj_uHRM5CI-AwlY/edit
trying to make OIDC more coherant and maintainable in addition
to giving the user a better experience and integration with a
provider.
remove usernames in magic dns, normalisation of emails
this commit removes the option to have usernames as part of MagicDNS
domains and headscale will now align with Tailscale, where there is a
root domain, and the machine name.
In addition, the various normalisation functions for dns names has been
made lighter not caring about username and special character that wont
occur.
Email are no longer normalised as part of the policy processing.
untagle oidc and regcache, use typed cache
This commits stops reusing the registration cache for oidc
purposes and switches the cache to be types and not use any
allowing the removal of a bunch of casting.
try to make reauth/register branches clearer in oidc
Currently there was a function that did a bunch of stuff,
finding the machine key, trying to find the node, reauthing
the node, returning some status, and it was called validate
which was very confusing.
This commit tries to split this into what to do if the node
exists, if it needs to register etc.
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2024-10-02 14:50:17 +02:00
Kristoffer Dalby
3964dec1c6
use tsaddr library and cleanups ( #2150 )
...
* resuse tsaddr code instead of handrolled
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* ensure we dont give out internal tailscale IPs
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* use prefix instead of string for routes
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* remove old custom compare func
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* trim unused util code
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
---------
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2024-10-02 09:06:09 +02:00
enoperm
1e61084898
Add compatibility with only websocket-capable clients ( #2132 )
...
* handle control protocol through websocket
The necessary behaviour is already in place,
but the wasm build only issued GETs, and the handler was not invoked.
* get DERP-over-websocket working for wasm clients
* Prepare for testing builtin websocket-over-DERP
Still needs some way to assert that clients are connected through websockets,
rather than the TCP hijacking version of DERP.
* integration tests: properly differentiate between DERP transports
* do not touch unrelated code
* linter fixes
* integration testing: unexport common implementation of derp server scenario
* fixup! integration testing: unexport common implementation of derp server scenario
* dockertestutil/logs: remove unhelpful comment
* update changelog
---------
Co-authored-by: Csaba Sarkadi <sarkadicsa@tutanota.de >
2024-09-21 12:05:36 +02:00
Kristoffer Dalby
f368ed01ed
2068 AutoApprovers tests ( #2105 )
...
* replace old suite approved routes test with table driven
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* add test to reproduce issue
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* add integration test for 2068
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
---------
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2024-09-05 16:46:20 +02:00
Kristoffer Dalby
cf6a606d74
fix route table migration wiping routes 0.22 -> 0.23 ( #2076 )
2024-08-27 18:54:28 +02:00
nadongjun
fdc034e8ae
Integrate GORM Logger with Zerolog and Add Configuration Options for Logging and Performance ( #2040 )
...
* Integrate GORM logger with zerolog and add custom GORM configuration options
* Add GormConfig struct to group GORM-related settings
* Update debug mode instruction in config-example.yaml
Co-authored-by: Kristoffer Dalby <kristoffer@dalby.cc >
---------
Co-authored-by: Kristoffer Dalby <kristoffer@dalby.cc >
2024-08-19 11:47:52 +02:00
Kristoffer Dalby
11fde62b8c
remove custom contains funcs for slices.Contains ( #2015 )
...
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2024-07-19 09:04:04 +02:00
Kristoffer Dalby
2ce23df45a
Migrate IP fields in database to dedicated columns ( #1869 )
2024-04-17 07:03:06 +02:00
Kristoffer Dalby
5dbd59ca55
Get integration test netmap from watch-ipn command ( #1729 )
2024-02-18 23:22:18 +01:00
Kristoffer Dalby
b60ee9db54
improve errors for missing directories ( #1765 )
...
* improve errors for missing directories
Fixes #1761
Updates #1760
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* update container docs
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
* update changelog with /var changes
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
---------
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2024-02-17 13:36:19 +01:00
Kristoffer Dalby
00e7550e76
Add assert func for verifying status, netmap and netcheck ( #1723 )
2024-02-09 07:26:41 +01:00
Kristoffer Dalby
55ca078f22
embed (hidden) tailsql for debugging ( #1663 )
...
Signed-off-by: Kristoffer Dalby <kristoffer@dalby.cc >
2023-12-20 21:47:48 +01:00
Kristoffer Dalby
f65f4eca35
ensure online status and route changes are propagated ( #1564 )
2023-12-09 18:09:24 +01:00
Kristoffer Dalby
c0fd06e3f5
remove the use key stripping and store the proper keys ( #1603 )
2023-11-16 17:55:29 +01:00
Kristoffer Dalby
23a3adf8d2
use cmp.Diff instead of reflect.DeepEqual
...
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2023-07-01 21:55:47 +02:00
Kristoffer Dalby
665a3cc666
add generic logerr func to shorten code
...
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2023-07-01 08:35:04 +01:00
Kristoffer Dalby
717abe89c1
remove "stripEmailDomain" argument
...
This commit makes a wrapper function round the normalisation requiring
"stripEmailDomain" which has to be passed in almost all functions of
headscale by loading it from Viper instead.
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2023-06-21 10:31:48 +02:00
Kristoffer Dalby
c1218ad3c2
move reminder of dns funcs to util
...
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2023-06-08 16:34:15 +02:00
Kristoffer Dalby
feb15365b5
Split code into modules
...
This is a massive commit that restructures the code into modules:
db/
All functions related to modifying the Database
types/
All type definitions and methods that can be exclusivly used on
these types without dependencies
policy/
All Policy related code, now without dependencies on the Database.
policy/matcher/
Dedicated code to match machines in a list of FilterRules
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2023-05-26 12:24:50 +02:00
Kristoffer Dalby
14e29a7bee
create DB struct
...
This is step one in detaching the Database layer from Headscale (h). The
ultimate goal is to have all function that does database operations in
its own package, and keep the business logic and writing separate.
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com >
2023-05-26 12:24:50 +02:00