Jeff Mitchell
7ee8ddba6a
True up some spelling
2021-05-14 16:26:25 -04:00
Jeff Mitchell
6f34da8923
Add cleanup of dead connections no longer reported by a worker ( #1220 )
2021-05-14 13:23:12 -04:00
Jeff Mitchell
6c48f6ea77
Use pointers for any Uber atomic values ( #1044 )
...
BK clued me into the fact that for some types, similar alignment
problems exist as with the normal atomic package (e.g. 64-bit types on
32-bit architectures) if they are not pointer values. So change the few
places they weren't pointers to pointers.
None of these are 64-bit, but it feels like best practice for using the
library and should just standardize on it.
2021-04-05 09:37:34 -04:00
Jeff Mitchell
4738ceee5d
Add TLS certificate and worker tag reloading on SIGHUP (ICU-1142) (ICU-1143) ( #959 )
2021-02-25 17:57:10 -05:00
Jeff Mitchell
717a3b52ee
Add worker tagging ( #862 )
...
This allows workers to have tags assigned to them, which can then be filtered to control which targets they are allowed to serve.
2021-01-21 16:27:20 -05:00
Michael Gaffney and Jeff Mitchell
94cb79bbdd
See how Boundary would look with gofumpt applied ( #853 )
...
* See how Boundary would look with https://github.com/mvdan/gofumpt applied
Results of running `gofumpt -w -s .`
* Update tools file and Makefile for gofumpt
Co-authored-by: Jeff Mitchell <jeffrey.mitchell@gmail.com >
2021-01-07 10:02:32 -05:00
Jeff Mitchell
a6cca576a3
Attempt canceling sessions by the client ( #831 )
...
* Attempt canceling sessions by the client
In some circumstances (like a Ctrl-C), the client knows it's shutting
down and the TOFU token will be lost. In this case it makes sense to
cancel the session rather than have it time out. This introduces a
command enum to the handshake message which can be used for the client
to send commands to the worker -- in this case the only specified
command is to cancel the session. It doesn't occur if the session is
already timed out or if we can't authorize connections as this generally
means the session is already invalid.
2020-12-16 17:14:47 -05:00
Jeff Mitchell
18ea39b237
Remove usage of manual.GenerateAndRegisterManualResolver ( #810 )
...
This has been removed in latest grpc.
2020-12-07 13:01:21 -05:00
Jeff Mitchell
e2e4631929
Add ability to set public cluster address ( #761 )
2020-10-30 16:54:53 -04:00
Jeff Mitchell
1f48d97327
Support for Unix domain socket listeners ( #705 )
...
The client already supports protocol-agnostic transport so handles
unix:/// schemes.
2020-10-16 13:45:47 -04:00
Jeff Mitchell
4833fbba23
Simplify worker->controller connection ( #601 )
...
Go's TLS stack doesn't need a separate CA cert and in fact for sessions
we don't use this. So simplify the worker connection to remove an
unnecessary extra key generation.
2020-10-09 16:49:36 -04:00
Jeff Mitchell
8615d21a1f
Remove connection from worker if in terminated state and all conns are closed, not just in canceling state
2020-10-01 20:49:13 -04:00
Jeff Mitchell
61a0ae02c1
Bring go-alpnmux in house for now
2020-09-25 10:17:12 -04:00
Jeff Mitchell
e86c11db62
Add session lifecycle info to controller's INFO log. ( #431 )
...
This required some plumbing, but nothing major.
2020-09-24 14:12:34 -04:00
Christian Frichot
3940842c4d
Remove legacy references to Vault's API ( #426 )
2020-09-24 12:55:06 -04:00
Jeff Mitchell
262ff06042
Add public address config option ( #405 )
2020-09-22 08:28:10 -04:00
Jeff Mitchell
f25186f78a
Standardize on one spelling of "canceled" ( #399 )
2020-09-21 16:33:28 -04:00
Todd Knight
21f5cc274f
Don't return nil, nil for API service methods. Add tests for updating w/ wrong version. ( #396 )
2020-09-21 15:09:30 -04:00
Jeff Mitchell
27d728875c
Cleanup session state enum ( #394 )
...
It's up to the worker to understand what a change in state means, so
there was no functional difference between simply sending a state change
request and a cancel request.
2020-09-21 11:36:38 -04:00
Jeff Mitchell
fcdaf129a3
Add missing continue in close function
2020-09-21 02:44:53 -04:00
Jeff Mitchell
33b0021547
Add Sessions CLI command and add session cleanup to worker ( #388 )
2020-09-21 02:22:59 -04:00
Jeff Mitchell
bb6ece69b6
Remove unused struct member
2020-09-21 00:11:37 -04:00
Jeff Mitchell
9cbc7b5c3d
Add connection close call from worker to controller ( #387 )
2020-09-21 00:09:50 -04:00
Jeff Mitchell
7ff4b7f106
Send connected RPC to controller ( #386 )
2020-09-20 23:09:42 -04:00
Jeff Mitchell
4669c95999
Pass more session info around, make proxy UX nicer ( #385 )
2020-09-20 21:18:07 -04:00
Jeff Mitchell
f7e48ec836
Plumb connection limit to proxy and output it ( #384 )
2020-09-20 16:28:00 -04:00
Jeff Mitchell
5214f14105
Work on connection authorization ( #381 )
2020-09-20 12:51:08 -04:00
Jeff Mitchell
ee7cdde7de
Add trace code for when we add port to controller address
2020-09-19 14:08:33 -04:00
Jeff Mitchell
e002326293
Plumb timeouts to worker and set appropriate deadlines ( #378 )
2020-09-19 13:51:50 -04:00
Jeff Mitchell
07a7e9750a
Tie together the database-driven session handling with the worker and add relevant CLI comands ( #370 )
2020-09-19 00:18:17 -04:00
Todd Knight
33e7b4538e
WorkerCoordination and GetSession API refactoring ( #354 )
...
* Possible api changes.
* Worker API update.
* Updating import alias name.
* Moving session down a level as a member of the GetSessionResponse.
* Marshal the auth flag into the GetSessionResponse proto instead of the session.
2020-09-12 21:54:18 -07:00
Jeff Mitchell
c689af4306
Implement a TOFU mechanism on auth to worker ( #348 )
...
This sets us up to better support multiple connections per session at
some future point.
2020-09-10 23:25:40 -04:00
Jeff Mitchell
23156afa11
Add in most of the proxy flow ( #326 )
2020-09-03 13:24:34 -04:00
Jeff Mitchell
b47cca0329
Add (non-db aspects of) the recovery key workflow ( #286 )
2020-08-20 13:34:03 -04:00
Jim
9570897032
basic keys mgmt repo ( #264 )
2020-08-19 16:47:18 -04:00
Jeff Mitchell
5d104a7a01
Migrate off Vault's internalshared folder to the separated-out repo
2020-08-12 16:12:45 -04:00
Jeff Mitchell
203e2b5dc2
Initial worker porting steps ( #232 )
2020-08-12 00:40:39 -04:00
Jeff Mitchell
6661117d4c
The name. The name. The name!
2020-08-10 17:15:02 -04:00
Todd Knight
28dbcd84bd
Authenticate Handler API and SDK, and much more ( #183 )
2020-07-14 17:32:47 -04:00
Jeff Mitchell
4d1b916348
Remove AllLoggers ( #39 )
...
This was copied from Vault code but shouldn't be necessary any more as a
change in hclog a while back meant that derived loggers share the log
level of the parent.
2020-05-11 13:30:38 -04:00
Jeff Mitchell
5e82db8a2d
Minor bugfixes and cleanup
2020-03-23 14:50:19 -04:00
Jeff Mitchell
cad3c24f54
Add auth over ALPN ( #5 )
2020-03-22 20:17:23 -04:00
Jeff Mitchell
5acda6a0b1
Begin purpose-based listener refactoring ( #4 )
2020-03-22 08:27:24 -04:00
Jeff Mitchell
07032f6908
Refactoring and the worker is more distinct now ( #3 )
2020-03-20 12:51:39 -04:00
Jeff Mitchell
1645c3106e
Migrate a bunch of stuff around to prep for worker command ( #2 )
...
Right now it's essentially a copy; it needs some updating, integration
into dev, and so on.
2020-03-19 15:17:40 -04:00