Commit Graph
682 Commits
Author SHA1 Message Date
Todd cb1e9b570b Add CLI flags for creating an alias with a target (#4512)
* Add CLI flags for creating an alias with a target

* Add bats tests
2024-03-15 09:36:34 -07:00
Jeff Mitchell 7105270cd5 Make TestServer_ReloadWorkerTags non-parallel
This will hopefully help with flakiness.

Note: this was tested on the Ent side
2024-03-14 14:25:17 -04:00
Jeff Mitchell 19b19d6756 Comment out parallel statements causing test failures (#4528)
It hasn't been investigated why this is happening (getting a number of
403 errors) but for now removing parallel fixes it.
2024-03-13 21:12:26 -04:00
Jeff Mitchell 9408b2b299 Add some more fixes caught by race detector (#4488) 2024-03-07 14:46:10 -05:00
Irena Rindos 5a93a7e9a2 chore(cmd): fix initial alias doc (#4484) 2024-03-05 17:49:27 -05:00
Irena Rindos cedff227c3 dev: use URL for web target and add caveat (#4454) 2024-02-29 15:52:27 -08:00
Irena Rindos e80e9a6da5 feat(dev): create initial alias targets for boundary dev (#4433)
* feat(dev): create initial alias targets for boundary dev
2024-02-29 15:52:27 -08:00
Todd 24a2089db8 Add aliases to table format output for target reads (#4416) 2024-02-29 15:52:27 -08:00
Todd 305bb09c35 Treat alias values like other required fields in API and CLI (#4404)
* Treat Alias values like other required fields in API and CLI

* Fix protoc versions since we recently rebased on main which uses updated version
2024-02-29 15:52:27 -08:00
Todd a6c96d69ae Add TargetAliasAuthorizeSessionArgumentsHostId api options (#4397)
* Add host id api option
2024-02-29 15:52:27 -08:00
Irena Rindos ba21e076bb cli(aliases): Support aliases for connect and targets in the CLI (#4356)
* cli(aliases): Support aliases for boundary connect and boundary targets CLI
2024-02-29 15:52:27 -08:00
Todd 78e10864c4 Add alias CLI CRUDL commands (#4353)
* Add alias CLI CRUDL commands
2024-02-29 15:51:24 -08:00
Michael Milton 2e69d59dd2 feat(billing): Add cli subcommand for monthly active user counts 2024-02-23 15:44:10 +00:00
Jeff Mitchell c3297bb96f Remove worker type from CLI output (#4396)
This does not currently remove the field from the message on the API but
since it will now always show `pki` it's meaningless and causing
confusion for some users.
2024-02-23 10:33:57 -05:00
Jeff MitchellandDamian Debkowski 014a5a7aae Vet/race fixes (#4421)
This addresses all found vet/race fixes in community edition.

---------

Co-authored-by: Damian Debkowski <damian.debkowski@hashicorp.com>
2024-02-21 16:32:26 -05:00
Jeff MitchellandDamian Debkowski 35cef97bd4 Linter fixes PR 3 (#4415)
* Linter fixes

* fix(bsr): update test to register TEST protocol once

---------

Co-authored-by: Damian Debkowski <damian.debkowski@hashicorp.com>
2024-02-16 08:30:16 -05:00
Jeff Mitchell 49803e653c Linter fixes numero 2 (#4408) 2024-02-14 17:14:31 -05:00
Jeff Mitchell 25bce9e8ff Fix linter warnings 2024-02-13 15:50:11 -05:00
Louis Ruch d59f089819 feat(policies): Update SDK/API to support setting/clearing attributes (#4385) 2024-02-09 09:37:34 -08:00
Irena Rindos da30653486 commands: fix plurals (#4369)
* commands: fix plurals
2024-02-07 12:45:28 -05:00
ToddandJim eb6d0dbd6a Use the intercepted token always. If the keyring matches, use it from there (#4355)
* Use the intercepted token if present, use it through the keyring if keyring contains it

* fixup! Use the intercepted token if present, use it through the keyring if keyring contains it

* Apply suggestions from code review

Co-authored-by: Jim <jlambert@hashicorp.com>

---------

Co-authored-by: Jim <jlambert@hashicorp.com>
2024-02-06 11:46:28 -08:00
Yong Zhang e34d3bb415 Fix example scope id for role grants (#4348)
* Rename example scope id

* revert newline at eof
2024-02-02 17:35:05 -08:00
Todd d500f24014 fix: boundary authenticate returns an API error code when auth fails (#4342) 2024-01-31 15:11:28 -08:00
dde833e8cf Decrease number of flags shown for daemon/search (#4312)
* Decrease number of flags shown for daemon/search
* Update changelog
---------

Co-authored-by: Jeff Mitchell <jeffrey.mitchell@gmail.com>
Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>
2024-01-26 15:56:41 -08:00
Jeff Mitchell e91c4cbfe2 Remove support for 'id' field in grants (#4290) 2024-01-25 15:58:55 -05:00
Louis Ruch 7921ce22fd test(grant): Use ID to validate version check (#4274)
* test(grant): Use ID to validate version check

* Update docs from id to ids

* Remove 'id' in 0.16.0
2024-01-25 13:27:22 -05:00
Louis Ruch fe6126438e chore: Fix typos (#4285) 2024-01-25 09:43:40 -08:00
dani 6a55245394 fix(cli): StoragePolicyId indent on list scopes (#4279) 2024-01-25 12:27:36 -05:00
f5dd457b34 Multiple grant scope IDs (#4251)
Co-authored-by: Timothy Messier <tim.messier@gmail.com>
Co-authored-by: Todd <github@quaddi.com>
2024-01-23 14:33:09 -05:00
Todd 0dac9005c1 Boundary auth without a keyring configured behaves like -keyring-type none (#4268) 2024-01-22 16:40:23 -08:00
Jeff MitchellandJohan Brandhorst-Satzkorn fff5f9506f Migrate proxy logic to the API package (#4216)
This allows arbitrary programs to have an easy mechanism to make
connections through Boundary using Go. Internal cluster tests and test
helpers have been migrated to use this package, as well as the `connect`
command.

---------

Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>
2024-01-21 22:34:33 -05:00
Timothy Messier 9c5c17a3ee feat(cmd): Disable postgres JIT for boundary dev
After updating `boundary dev` to use postgres:12 by default, it was
noticed that the responsiveness of boundary was noticeably slower. This
is due to the introduction of JIT being enabled by default in
postgres:12. JIT seems to incur noticeable overhead without providing
benefits, at least for the instance used for `boundary dev`.

It is also worth noting that for postgres:14 and newer, JIT does not get
triggered for the same queries since they seem to result in a cheaper
query plan that does not exceed the default threshold for JIT.

See:
    https://www.postgresql.org/docs/current/jit.html
    ICU-12283
2024-01-18 19:37:46 +00:00
Todd 884a0cb1fc Fix daemon synopsis and command grouping (#4249) 2024-01-18 09:54:21 -08:00
Jeff Mitchell 253d79116c Swap id field in grants to ids since that's now standardized (#4250)
* Swap id field in grants to ids since that's now standardized

* Fix some tests I missed

* Update generated resource table
2024-01-17 23:54:49 -08:00
Todd 962f9bd638 Pass in options to NewCommand call (#4248) 2024-01-17 16:41:28 -08:00
Damian Debkowski 621b535dde chore: move infinity retention definition 2024-01-16 13:53:44 -08:00
Louis Ruch b237fe24f1 feat(cmd): Add help text for storage policy scope funcs 2024-01-16 13:53:44 -08:00
Damian Debkowski 5c1ef080cc feat(cmd): session recording reapply storage policy 2024-01-16 13:53:44 -08:00
Louis Ruch f26243e9af feat(recording): Delete Session Recording 2024-01-16 13:53:44 -08:00
Louis Ruch 86f10f3ea4 feat(recording): Add RetainUntil and DeleteAfter to Session Recording CLI 2024-01-16 13:53:44 -08:00
Louis Ruch 20897640cd feat(cli): Add support for Scope Storage Policy 2024-01-16 13:53:44 -08:00
Hugo 08e8d96514 feat(cmd): Policies 2024-01-16 13:53:44 -08:00
Jeff Mitchell 9332179a01 Remove the deprecated old KMS worker auth mechanism (#3935)
This has been superceded by the nodeenrollment-based KMS worker auth
mechanism. This commit only removes the ability to connect with this
mechanism; some upgrade logic will remain intact for a bit and
can be removed later.
2024-01-12 11:58:12 -05:00
Todd 5aa560387c Add pagination for iam Roles (#4161)
* Add pagination for iam Roles
2024-01-05 07:43:21 -08:00
Todd 97f800d396 Fix rebase issues 2024-01-05 07:43:20 -08:00
Todd 71b09222ae Add status command to the boundary client cache (#3871)
* Add status command to the boundary client cache
2024-01-05 07:43:20 -08:00
Todd 3a7ea64a31 Add skip daemon flag and send recently authed tokens to daemon (#3883)
* Add skip daemon flag and send recently authed tokens to daemon

* Rename flag skip-daemon to skip-cache-daemon

* adding option test

* move common.Options to base.Option

* SocketAddress returns *url.URL, fix search test
2024-01-05 07:43:20 -08:00
Jim fba9d1cdf1 Add client daemon repo, server, and cmd
The commands added are:
boundary daemon start
boundary daemon stop
boundary daemon add-token
boundary daemon status
boundary search

If these actions are performed on a platform that doesn't support sqlite
natively in go an error is returned.

Besides some hooks into the cmd package all the significant logic
resides in internal/clientcache

feat (cmds/authenticate): output the token name when storing token

feat: update go-dbw which now uses pure go sqlite driver

refact (base.Command): export FlagOutputCurlString

Exporting FlagOutputCurlString allows other commands that embed
the base.Command to access the flag as needed

feat: add a cache Repository to manage cache storage

feat: add a "cache" CLI command

This new command will support both managing and searching the
local CLI cache daemon.

feat: start cache daemon as needed when issue CLI commands

Move files to new directories and add persona table (#3526)

* Add persona table and move files to new directories

Client daemon now uses unix sockets and update pathing (#3535)

* Add unix socket listen and dialers with file permissions applied

* Update the pathing to match RFC

Cache refreshing now uses all stored personas. (#3545)

Updating headers for LLB files

Decouple daemon and cache server (#3566)

* Separate daemon from server

* Add persona handler to daemon server (#3579)

Moved search to use mql and added tests for the search command (#3589)

* search uses hashicorp/mql

Windows support for client side daemon (#3618)

* exec.Command for background process

* Log to stderr when in foreground and file always

* Use pid files across platform for start and stop

Requests with version info must match the daemon's version (#3640)

* requests with version info must match daemons

Update dependencies and breakout cgo/pure go sqlite drivers  (#3657)

upgrade go-dbw deps and add cgo build tags

Enable graceful shutdown in windows (#3695)

* Enable graceful shutdown in windows

Co-authored-by: Jim <jlambert@hashicorp.com>

Targets delete when a persona changes address or user id (#3673)

* Handle cache refresh in repo

Add sessions to the client side cache (#3682)

* Add sessions to repository

* Search command supports sessions

* adding session related tests to db and refresh

Change cache schema from personas to tokens+users (#3737)

* Change from personas to tokens+users

* Separate keyring tokens from auth tokens

Add support for keyringless auth tokens (#3765)

* Add support for keyringless auth tokens

Remove expired auth tokens from cache (#3768)

* Remove expired auth tokens from cache

Complete the TODO of checking for inflight tx (#3779)

Delete tokens that the controller says are invalid (#3782)

fix search test with boundary token check (#3799)

Collect resource info in repository_<resource>s.go (#3769)

* Collect resource info in repository_<resource>s.go

* Move search logic into the domain (#3794)

Daemon and search restricted to supported platforms (#3801)

* Daemon and search restricted to supported platforms

Reorganize the clientcache packages (#3814)

* Refactor for self contained domain logic

* Put clientcache stuff under internal
2024-01-05 07:43:20 -08:00
Johan Brandhorst-Satzkorn 9ce5a14ef0 config: add max_page_size variable
The max_page_size variable lets operators control the size of the
pagination pages. This value configures both the maximum permitted
page size and the default page size when none is explicitly provided.

Operators can tweak this option up or down to increase or reduce
the load on the database during pagination.
2024-01-05 07:43:20 -08:00
Timothy Messier a77c88ae5d feat(ratelimit): Increase default values (#4129)
This increases the default rate limits to:

- 1,500 reqs / 30 seconds for list actions in total
- 1,500 reqs / 30 seconds for list actions per IP address
- 150 reqs / 30 seconds for list actions per auth token

And for all other actions:

- 30,000 reqs / 30 seconds for list actions in total
- 30,000 reqs / 30 seconds for list actions per IP address
- 3,000 reqs / 30 seconds for list actions per auth token

This seems to be a reasonable default for a small to medium size cluster
based on some scale testing.

(cherry picked from commit 237c8b6084f42655edaba49055e511163fdf1c53)
2023-12-08 14:53:49 +00:00