Files
threshold/internal/credential/vault/repository_credential_library.go
T
dependabot[bot]andJohan Brandhorst-Satzkorn b56274391c chore(deps): bump the go group across 13 directories with 59 updates (#5782)
* chore(deps): bump the go group across 13 directories with 59 updates

Bumps the go group with 36 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/cenkalti/backoff/v4](https://github.com/cenkalti/backoff) | `4.2.1` | `4.3.0` |
| [github.com/creack/pty](https://github.com/creack/pty) | `1.1.21` | `1.1.24` |
| [github.com/docker/docker](https://github.com/docker/docker) | `27.1.1+incompatible` | `28.1.1+incompatible` |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.17.0` | `1.18.0` |
| [github.com/glebarez/sqlite](https://github.com/glebarez/sqlite) | `1.10.0` | `1.11.0` |
| [github.com/golang-migrate/migrate/v4](https://github.com/golang-migrate/migrate) | `4.17.0` | `4.18.3` |
| [github.com/grpc-ecosystem/grpc-gateway/v2](https://github.com/grpc-ecosystem/grpc-gateway) | `2.19.1` | `2.26.3` |
| [github.com/hashicorp/cap](https://github.com/hashicorp/cap) | `0.5.1-0.20240315182732-faa330bfb8df` | `0.9.0` |
| [github.com/hashicorp/eventlogger](https://github.com/hashicorp/eventlogger) | `0.2.9` | `0.2.11` |
| [github.com/hashicorp/go-bexpr](https://github.com/hashicorp/go-bexpr) | `0.1.13` | `0.1.14` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.17-0.20240313190905-91d44aa8e360` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/configutil/v2](https://github.com/hashicorp/go-secure-stdlib) | `2.0.11` | `2.0.12` |
| [github.com/hashicorp/go-secure-stdlib/listenerutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.1.10` |
| [github.com/hashicorp/go-secure-stdlib/password](https://github.com/hashicorp/go-secure-stdlib) | `0.1.3` | `0.1.4` |
| [github.com/hashicorp/go-secure-stdlib/pluginutil/v2](https://github.com/hashicorp/go-secure-stdlib) | `2.0.6` | `2.0.8` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/hashicorp/go-version](https://github.com/hashicorp/go-version) | `1.6.0` | `1.7.0` |
| [github.com/hashicorp/hcl](https://github.com/hashicorp/hcl) | `1.0.1-vault-5` | `1.0.1-vault-7` |
| [github.com/hashicorp/mql](https://github.com/hashicorp/mql) | `0.1.3` | `0.1.5` |
| [github.com/hashicorp/vault/api](https://github.com/hashicorp/vault) | `1.12.0` | `1.16.0` |
| [github.com/jackc/pgx/v5](https://github.com/jackc/pgx) | `5.6.0` | `5.7.5` |
| [github.com/jimlambrt/gldap](https://github.com/jimlambrt/gldap) | `0.1.10` | `0.1.14` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/miekg/dns](https://github.com/miekg/dns) | `1.1.58` | `1.1.66` |
| [github.com/oligot/go-mod-upgrade](https://github.com/oligot/go-mod-upgrade) | `0.9.1` | `0.11.0` |
| [github.com/ory/dockertest/v3](https://github.com/ory/dockertest) | `3.10.0` | `3.12.0` |
| [github.com/pires/go-proxyproto](https://github.com/pires/go-proxyproto) | `0.7.0` | `0.8.1` |
| [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) | `1.18.0` | `1.22.0` |
| [github.com/zalando/go-keyring](https://github.com/zalando/go-keyring) | `0.2.3` | `0.2.6` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc/cmd/protoc-gen-go-grpc](https://github.com/grpc/grpc-go) | `1.3.0` | `1.5.1` |
| [gorm.io/driver/postgres](https://github.com/go-gorm/postgres) | `1.5.9` | `1.5.11` |
| [nhooyr.io/websocket](https://github.com/nhooyr/websocket-old) | `1.8.10` | `1.8.17` |
| [golang.org/x/time](https://github.com/golang/time) | `0.5.0` | `0.11.0` |
| [github.com/hashicorp/go-kms-wrapping/plugin/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.7` | `2.0.8` |

Bumps the go group with 10 updates in the /api directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/google/go-cmp](https://github.com/google/go-cmp) | `0.6.0` | `0.7.0` |
| [github.com/hashicorp/eventlogger](https://github.com/hashicorp/eventlogger) | `0.2.6-0.20231025104552-802587e608f0` | `0.2.11` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.61.0` | `1.72.1` |
| [nhooyr.io/websocket](https://github.com/nhooyr/websocket-old) | `1.8.10` | `1.8.17` |
| [github.com/hashicorp/boundary/sdk](https://github.com/hashicorp/boundary) | `0.0.48` | `0.0.52` |
| [golang.org/x/time](https://github.com/golang/time) | `0.3.0` | `0.11.0` |

Bumps the go group with 9 updates in the /plugins/boundary/mains/aws directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/hashicorp/eventlogger](https://github.com/hashicorp/eventlogger) | `0.2.10` | `0.2.11` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/pluginutil/v2](https://github.com/hashicorp/go-secure-stdlib) | `2.0.7` | `2.0.8` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.68.0` | `1.72.1` |
| [github.com/hashicorp/boundary/sdk](https://github.com/hashicorp/boundary) | `0.0.51` | `0.0.52` |

Bumps the go group with 13 updates in the /plugins/boundary/mains/azure directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.16.0` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/hashicorp/eventlogger](https://github.com/hashicorp/eventlogger) | `0.2.6-0.20231025104552-802587e608f0` | `0.2.11` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/parseutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.2.0` |
| [github.com/hashicorp/go-secure-stdlib/pluginutil/v2](https://github.com/hashicorp/go-secure-stdlib) | `2.0.6` | `2.0.8` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/hashicorp/go-version](https://github.com/hashicorp/go-version) | `1.3.0` | `1.7.0` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.59.0` | `1.72.1` |
| [github.com/hashicorp/boundary/sdk](https://github.com/hashicorp/boundary) | `0.0.39` | `0.0.52` |

Bumps the go group with 14 updates in the /plugins/boundary/mains/gcp directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.15.0` | `1.18.0` |
| [github.com/hashicorp/eventlogger](https://github.com/hashicorp/eventlogger) | `0.2.9` | `0.2.11` |
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | `1.5.0` | `1.6.3` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/parseutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.2.0` |
| [github.com/hashicorp/go-secure-stdlib/pluginutil/v2](https://github.com/hashicorp/go-secure-stdlib) | `2.0.6` | `2.0.8` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.9.0` | `1.10.0` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.66.0` | `1.72.1` |
| [github.com/hashicorp/boundary/sdk](https://github.com/hashicorp/boundary) | `0.0.47` | `0.0.52` |
| [golang.org/x/time](https://github.com/golang/time) | `0.6.0` | `0.11.0` |

Bumps the go group with 13 updates in the /plugins/boundary/mains/minio directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.15.0` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/hashicorp/eventlogger](https://github.com/hashicorp/eventlogger) | `0.2.6-0.20231025104552-802587e608f0` | `0.2.11` |
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | `1.5.0` | `1.6.3` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/pluginutil/v2](https://github.com/hashicorp/go-secure-stdlib) | `2.0.6` | `2.0.8` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.9.0` | `1.10.0` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.61.0` | `1.72.1` |
| [github.com/hashicorp/boundary/sdk](https://github.com/hashicorp/boundary) | `0.0.51` | `0.0.52` |

Bumps the go group with 12 updates in the /plugins/kms/mains/alicloudkms directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.14.1` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | `1.5.0` | `1.6.3` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/parseutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.2.0` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.8.4` | `1.10.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.59.0` | `1.72.1` |
| [github.com/hashicorp/go-kms-wrapping/plugin/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.7` | `2.0.8` |
| [github.com/hashicorp/go-kms-wrapping/wrappers/alicloudkms/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.3` | `2.0.4` |

Bumps the go group with 12 updates in the /plugins/kms/mains/awskms directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.14.1` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | `1.5.0` | `1.6.3` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/parseutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.2.0` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.8.4` | `1.10.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.59.0` | `1.72.1` |
| [github.com/hashicorp/go-kms-wrapping/plugin/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.7` | `2.0.8` |
| [github.com/hashicorp/go-kms-wrapping/wrappers/awskms/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.10` | `2.0.11` |

Bumps the go group with 13 updates in the /plugins/kms/mains/azurekeyvault directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.15.0` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | `1.5.0` | `1.6.3` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/parseutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.2.0` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.9.0` | `1.10.0` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.59.0` | `1.72.1` |
| [github.com/hashicorp/go-kms-wrapping/plugin/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.7` | `2.0.8` |
| [github.com/hashicorp/go-kms-wrapping/wrappers/azurekeyvault/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.11` | `2.0.14` |

Bumps the go group with 13 updates in the /plugins/kms/mains/gcpckms directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.14.1` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | `1.5.0` | `1.6.3` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/parseutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.2.0` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.8.4` | `1.10.0` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.59.0` | `1.72.1` |
| [github.com/hashicorp/go-kms-wrapping/plugin/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.7` | `2.0.8` |
| [github.com/hashicorp/go-kms-wrapping/wrappers/gcpckms/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.12` | `2.0.13` |

Bumps the go group with 12 updates in the /plugins/kms/mains/ocikms directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.14.1` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | `1.5.0` | `1.6.3` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/parseutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.2.0` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.8.4` | `1.10.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.59.0` | `1.72.1` |
| [github.com/hashicorp/go-kms-wrapping/plugin/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.7` | `2.0.8` |
| [github.com/hashicorp/go-kms-wrapping/wrappers/ocikms/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.8` | `2.0.9` |

Bumps the go group with 13 updates in the /plugins/kms/mains/transit directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.16.0` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-sockaddr](https://github.com/hashicorp/go-sockaddr) | `1.0.6` | `1.0.7` |
| [github.com/hashicorp/vault/api](https://github.com/hashicorp/vault) | `1.10.0` | `1.16.0` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [github.com/stretchr/testify](https://github.com/stretchr/testify) | `1.8.4` | `1.10.0` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [google.golang.org/grpc](https://github.com/grpc/grpc-go) | `1.59.0` | `1.72.1` |
| [golang.org/x/time](https://github.com/golang/time) | `0.3.0` | `0.11.0` |
| [github.com/hashicorp/go-kms-wrapping/plugin/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.7` | `2.0.8` |
| [github.com/hashicorp/go-kms-wrapping/wrappers/transit/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.12` | `2.0.13` |

Bumps the go group with 14 updates in the /sdk directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/fatih/color](https://github.com/fatih/color) | `1.15.0` | `1.18.0` |
| [github.com/golang/protobuf](https://github.com/golang/protobuf) | `1.5.3` | `1.5.4` |
| [github.com/grpc-ecosystem/grpc-gateway/v2](https://github.com/grpc-ecosystem/grpc-gateway) | `2.19.1` | `2.26.3` |
| [github.com/hashicorp/eventlogger](https://github.com/hashicorp/eventlogger) | `0.2.6-0.20231025104552-802587e608f0` | `0.2.11` |
| [github.com/hashicorp/go-hclog](https://github.com/hashicorp/go-hclog) | `1.5.0` | `1.6.3` |
| [github.com/hashicorp/go-kms-wrapping/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.16` | `2.0.18` |
| [github.com/hashicorp/go-secure-stdlib/configutil/v2](https://github.com/hashicorp/go-secure-stdlib) | `2.0.11` | `2.0.12` |
| [github.com/hashicorp/go-secure-stdlib/listenerutil](https://github.com/hashicorp/go-secure-stdlib) | `0.1.9` | `0.1.10` |
| [github.com/hashicorp/go-secure-stdlib/pluginutil/v2](https://github.com/hashicorp/go-secure-stdlib) | `2.0.6` | `2.0.8` |
| [github.com/mattn/go-colorable](https://github.com/mattn/go-colorable) | `0.1.13` | `0.1.14` |
| [golang.org/x/crypto](https://github.com/golang/crypto) | `0.37.0` | `0.38.0` |
| [golang.org/x/net](https://github.com/golang/net) | `0.39.0` | `0.40.0` |
| [nhooyr.io/websocket](https://github.com/nhooyr/websocket-old) | `1.8.10` | `1.8.17` |
| [github.com/hashicorp/go-kms-wrapping/plugin/v2](https://github.com/hashicorp/go-kms-wrapping) | `2.0.7` | `2.0.8` |



Updates `github.com/cenkalti/backoff/v4` from 4.2.1 to 4.3.0
- [Changelog](https://github.com/cenkalti/backoff/blob/v5/CHANGELOG.md)
- [Commits](https://github.com/cenkalti/backoff/compare/v4.2.1...v4.3.0)

Updates `github.com/creack/pty` from 1.1.21 to 1.1.24
- [Release notes](https://github.com/creack/pty/releases)
- [Commits](https://github.com/creack/pty/compare/v1.1.21...v1.1.24)

Updates `github.com/docker/docker` from 27.1.1+incompatible to 28.1.1+incompatible
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.1.1...v28.1.1)

Updates `github.com/fatih/color` from 1.17.0 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/glebarez/sqlite` from 1.10.0 to 1.11.0
- [Release notes](https://github.com/glebarez/sqlite/releases)
- [Commits](https://github.com/glebarez/sqlite/compare/v1.10.0...v1.11.0)

Updates `github.com/golang-migrate/migrate/v4` from 4.17.0 to 4.18.3
- [Release notes](https://github.com/golang-migrate/migrate/releases)
- [Changelog](https://github.com/golang-migrate/migrate/blob/master/.goreleaser.yml)
- [Commits](https://github.com/golang-migrate/migrate/compare/v4.17.0...v4.18.3)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/google/go-cmp` from 0.6.0 to 0.7.0
- [Release notes](https://github.com/google/go-cmp/releases)
- [Commits](https://github.com/google/go-cmp/compare/v0.6.0...v0.7.0)

Updates `github.com/grpc-ecosystem/grpc-gateway/v2` from 2.19.1 to 2.26.3
- [Release notes](https://github.com/grpc-ecosystem/grpc-gateway/releases)
- [Changelog](https://github.com/grpc-ecosystem/grpc-gateway/blob/main/.goreleaser.yml)
- [Commits](https://github.com/grpc-ecosystem/grpc-gateway/compare/v2.19.1...v2.26.3)

Updates `github.com/hashicorp/cap` from 0.5.1-0.20240315182732-faa330bfb8df to 0.9.0
- [Release notes](https://github.com/hashicorp/cap/releases)
- [Changelog](https://github.com/hashicorp/cap/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/cap/commits/v0.9.0)

Updates `github.com/hashicorp/eventlogger` from 0.2.9 to 0.2.11
- [Commits](https://github.com/hashicorp/eventlogger/compare/v0.2.9...v0.2.11)

Updates `github.com/hashicorp/go-bexpr` from 0.1.13 to 0.1.14
- [Release notes](https://github.com/hashicorp/go-bexpr/releases)
- [Commits](https://github.com/hashicorp/go-bexpr/compare/v0.1.13...v0.1.14)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.17-0.20240313190905-91d44aa8e360 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/configutil/v2` from 2.0.11 to 2.0.12
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/configutil/v2.0.11...configutil/v2.0.12)

Updates `github.com/hashicorp/go-secure-stdlib/listenerutil` from 0.1.9 to 0.1.10
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...listenerutil/v0.1.10)

Updates `github.com/hashicorp/go-secure-stdlib/password` from 0.1.3 to 0.1.4
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/mlock/v0.1.3...awsutil/v0.1.4)

Updates `github.com/hashicorp/go-secure-stdlib/pluginutil/v2` from 2.0.6 to 2.0.8
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/configutil/v2.0.6...configutil/v2.0.8)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/hashicorp/go-version` from 1.6.0 to 1.7.0
- [Release notes](https://github.com/hashicorp/go-version/releases)
- [Changelog](https://github.com/hashicorp/go-version/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/go-version/compare/v1.6.0...v1.7.0)

Updates `github.com/hashicorp/hcl` from 1.0.1-vault-5 to 1.0.1-vault-7
- [Release notes](https://github.com/hashicorp/hcl/releases)
- [Changelog](https://github.com/hashicorp/hcl/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/hcl/compare/v1.0.1-vault-5...v1.0.1-vault-7)

Updates `github.com/hashicorp/mql` from 0.1.3 to 0.1.5
- [Release notes](https://github.com/hashicorp/mql/releases)
- [Changelog](https://github.com/hashicorp/mql/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/mql/compare/v0.1.3...v0.1.5)

Updates `github.com/hashicorp/vault/api` from 1.12.0 to 1.16.0
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/v1.12.0...v1.16.0)

Updates `github.com/jackc/pgx/v5` from 5.6.0 to 5.7.5
- [Changelog](https://github.com/jackc/pgx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jackc/pgx/compare/v5.6.0...v5.7.5)

Updates `github.com/jimlambrt/gldap` from 0.1.10 to 0.1.14
- [Release notes](https://github.com/jimlambrt/gldap/releases)
- [Commits](https://github.com/jimlambrt/gldap/compare/v0.1.10...v0.1.14)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/miekg/dns` from 1.1.58 to 1.1.66
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](https://github.com/miekg/dns/compare/v1.1.58...v1.1.66)

Updates `github.com/oligot/go-mod-upgrade` from 0.9.1 to 0.11.0
- [Release notes](https://github.com/oligot/go-mod-upgrade/releases)
- [Changelog](https://github.com/oligot/go-mod-upgrade/blob/main/.goreleaser.yml)
- [Commits](https://github.com/oligot/go-mod-upgrade/compare/v0.9.1...v0.11.0)

Updates `github.com/ory/dockertest/v3` from 3.10.0 to 3.12.0
- [Release notes](https://github.com/ory/dockertest/releases)
- [Commits](https://github.com/ory/dockertest/compare/v3.10.0...v3.12.0)

Updates `github.com/pires/go-proxyproto` from 0.7.0 to 0.8.1
- [Release notes](https://github.com/pires/go-proxyproto/releases)
- [Commits](https://github.com/pires/go-proxyproto/compare/v0.7.0...v0.8.1)

Updates `github.com/prometheus/client_golang` from 1.18.0 to 1.22.0
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.18.0...v1.22.0)

Updates `github.com/zalando/go-keyring` from 0.2.3 to 0.2.6
- [Release notes](https://github.com/zalando/go-keyring/releases)
- [Commits](https://github.com/zalando/go-keyring/compare/v0.2.3...v0.2.6)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/exp` from 0.0.0-20240205201215-2c58cdc269a3 to 0.0.0-20250408133849-7e4ce0ab07d0
- [Commits](https://github.com/golang/exp/commits)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sync` from 0.13.0 to 0.14.0
- [Commits](https://github.com/golang/sync/compare/v0.13.0...v0.14.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/term` from 0.31.0 to 0.32.0
- [Commits](https://github.com/golang/term/compare/v0.31.0...v0.32.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `golang.org/x/tools` from 0.21.1-0.20240508182429-e35e4ccd0d2d to 0.32.0
- [Release notes](https://github.com/golang/tools/releases)
- [Commits](https://github.com/golang/tools/commits/v0.32.0)

Updates `google.golang.org/genproto` from 0.0.0-20240205150955-31a09d347014 to 0.0.0-20240213162025-012b6fc9bca9
- [Commits](https://github.com/googleapis/go-genproto/commits)

Updates `google.golang.org/genproto/googleapis/api` from 0.0.0-20240205150955-31a09d347014 to 0.0.0-20250303144028-a0af3efb3deb
- [Commits](https://github.com/googleapis/go-genproto/commits)

Updates `google.golang.org/grpc` from 1.61.1 to 1.70.0
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/grpc/cmd/protoc-gen-go-grpc` from 1.3.0 to 1.5.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.3.0...v1.5.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `gorm.io/driver/postgres` from 1.5.9 to 1.5.11
- [Commits](https://github.com/go-gorm/postgres/compare/v1.5.9...v1.5.11)

Updates `mvdan.cc/gofumpt` from 0.5.0 to 0.8.0
- [Release notes](https://github.com/mvdan/gofumpt/releases)
- [Changelog](https://github.com/mvdan/gofumpt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mvdan/gofumpt/compare/v0.5.0...v0.8.0)

Updates `nhooyr.io/websocket` from 1.8.10 to 1.8.17
- [Release notes](https://github.com/nhooyr/websocket-old/releases)
- [Commits](https://github.com/nhooyr/websocket-old/commits/v1.8.17)

Updates `golang.org/x/time` from 0.5.0 to 0.11.0
- [Commits](https://github.com/golang/time/compare/v0.5.0...v0.11.0)

Updates `github.com/hashicorp/go-kms-wrapping/plugin/v2` from 2.0.7 to 2.0.8
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.7...v2.0.8)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/google/go-cmp` from 0.6.0 to 0.7.0
- [Release notes](https://github.com/google/go-cmp/releases)
- [Commits](https://github.com/google/go-cmp/compare/v0.6.0...v0.7.0)

Updates `github.com/hashicorp/eventlogger` from 0.2.6-0.20231025104552-802587e608f0 to 0.2.11
- [Commits](https://github.com/hashicorp/eventlogger/compare/v0.2.9...v0.2.11)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.8 to 0.1.9
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.5 to 1.0.6
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/stretchr/testify` from 1.8.4 to 1.9.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `google.golang.org/grpc` from 1.61.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `nhooyr.io/websocket` from 1.8.10 to 1.8.17
- [Release notes](https://github.com/nhooyr/websocket-old/releases)
- [Commits](https://github.com/nhooyr/websocket-old/commits/v1.8.17)

Updates `github.com/hashicorp/boundary/sdk` from 0.0.48 to 0.0.52
- [Release notes](https://github.com/hashicorp/boundary/releases)
- [Changelog](https://github.com/hashicorp/boundary/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/boundary/compare/api/v0.0.48...api/v0.0.52)

Updates `golang.org/x/time` from 0.3.0 to 0.11.0
- [Commits](https://github.com/golang/time/compare/v0.5.0...v0.11.0)

Updates `github.com/hashicorp/eventlogger` from 0.2.10 to 0.2.11
- [Commits](https://github.com/hashicorp/eventlogger/compare/v0.2.9...v0.2.11)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/pluginutil/v2` from 2.0.7 to 2.0.8
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/configutil/v2.0.6...configutil/v2.0.8)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.68.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/boundary/sdk` from 0.0.51 to 0.0.52
- [Release notes](https://github.com/hashicorp/boundary/releases)
- [Changelog](https://github.com/hashicorp/boundary/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/boundary/compare/api/v0.0.48...api/v0.0.52)

Updates `github.com/fatih/color` from 1.16.0 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/hashicorp/eventlogger` from 0.2.6-0.20231025104552-802587e608f0 to 0.2.11
- [Commits](https://github.com/hashicorp/eventlogger/compare/v0.2.9...v0.2.11)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.9 to 0.2.0
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-secure-stdlib/pluginutil/v2` from 2.0.6 to 2.0.8
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/configutil/v2.0.6...configutil/v2.0.8)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/hashicorp/go-version` from 1.3.0 to 1.7.0
- [Release notes](https://github.com/hashicorp/go-version/releases)
- [Changelog](https://github.com/hashicorp/go-version/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/go-version/compare/v1.6.0...v1.7.0)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.8.4 to 1.9.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sync` from 0.13.0 to 0.14.0
- [Commits](https://github.com/golang/sync/compare/v0.13.0...v0.14.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.59.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/boundary/sdk` from 0.0.39 to 0.0.52
- [Release notes](https://github.com/hashicorp/boundary/releases)
- [Changelog](https://github.com/hashicorp/boundary/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/boundary/compare/api/v0.0.48...api/v0.0.52)

Updates `github.com/fatih/color` from 1.15.0 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/hashicorp/eventlogger` from 0.2.9 to 0.2.11
- [Commits](https://github.com/hashicorp/eventlogger/compare/v0.2.9...v0.2.11)

Updates `github.com/hashicorp/go-hclog` from 1.5.0 to 1.6.3
- [Release notes](https://github.com/hashicorp/go-hclog/releases)
- [Commits](https://github.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.3)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.9 to 0.2.0
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-secure-stdlib/pluginutil/v2` from 2.0.6 to 2.0.8
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/configutil/v2.0.6...configutil/v2.0.8)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.9.0 to 1.10.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sync` from 0.13.0 to 0.14.0
- [Commits](https://github.com/golang/sync/compare/v0.13.0...v0.14.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.66.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/boundary/sdk` from 0.0.47 to 0.0.52
- [Release notes](https://github.com/hashicorp/boundary/releases)
- [Changelog](https://github.com/hashicorp/boundary/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/boundary/compare/api/v0.0.48...api/v0.0.52)

Updates `golang.org/x/time` from 0.6.0 to 0.11.0
- [Commits](https://github.com/golang/time/compare/v0.5.0...v0.11.0)

Updates `github.com/fatih/color` from 1.15.0 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/hashicorp/eventlogger` from 0.2.6-0.20231025104552-802587e608f0 to 0.2.11
- [Commits](https://github.com/hashicorp/eventlogger/compare/v0.2.9...v0.2.11)

Updates `github.com/hashicorp/go-hclog` from 1.5.0 to 1.6.3
- [Release notes](https://github.com/hashicorp/go-hclog/releases)
- [Commits](https://github.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.3)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/pluginutil/v2` from 2.0.6 to 2.0.8
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/configutil/v2.0.6...configutil/v2.0.8)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.9.0 to 1.10.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.61.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/boundary/sdk` from 0.0.51 to 0.0.52
- [Release notes](https://github.com/hashicorp/boundary/releases)
- [Changelog](https://github.com/hashicorp/boundary/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/boundary/compare/api/v0.0.48...api/v0.0.52)

Updates `github.com/fatih/color` from 1.14.1 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/hashicorp/go-hclog` from 1.5.0 to 1.6.3
- [Release notes](https://github.com/hashicorp/go-hclog/releases)
- [Commits](https://github.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.3)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.9 to 0.2.0
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.8.4 to 1.10.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.59.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/go-kms-wrapping/plugin/v2` from 2.0.7 to 2.0.8
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.7...v2.0.8)

Updates `github.com/hashicorp/go-kms-wrapping/wrappers/alicloudkms/v2` from 2.0.3 to 2.0.4
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.3...v2.0.4)

Updates `github.com/fatih/color` from 1.14.1 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/hashicorp/go-hclog` from 1.5.0 to 1.6.3
- [Release notes](https://github.com/hashicorp/go-hclog/releases)
- [Commits](https://github.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.3)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.9 to 0.2.0
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.8.4 to 1.10.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.59.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/go-kms-wrapping/plugin/v2` from 2.0.7 to 2.0.8
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.7...v2.0.8)

Updates `github.com/hashicorp/go-kms-wrapping/wrappers/awskms/v2` from 2.0.10 to 2.0.11
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.10...v2.0.11)

Updates `github.com/fatih/color` from 1.15.0 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/hashicorp/go-hclog` from 1.5.0 to 1.6.3
- [Release notes](https://github.com/hashicorp/go-hclog/releases)
- [Commits](https://github.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.3)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.9 to 0.2.0
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.9.0 to 1.10.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.59.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/go-kms-wrapping/plugin/v2` from 2.0.7 to 2.0.8
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.7...v2.0.8)

Updates `github.com/hashicorp/go-kms-wrapping/wrappers/azurekeyvault/v2` from 2.0.11 to 2.0.14
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.11...v2.0.14)

Updates `github.com/fatih/color` from 1.14.1 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/hashicorp/go-hclog` from 1.5.0 to 1.6.3
- [Release notes](https://github.com/hashicorp/go-hclog/releases)
- [Commits](https://github.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.3)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.9 to 0.2.0
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.8.4 to 1.10.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sync` from 0.13.0 to 0.14.0
- [Commits](https://github.com/golang/sync/compare/v0.13.0...v0.14.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.59.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/go-kms-wrapping/plugin/v2` from 2.0.7 to 2.0.8
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.7...v2.0.8)

Updates `github.com/hashicorp/go-kms-wrapping/wrappers/gcpckms/v2` from 2.0.12 to 2.0.13
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.12...v2.0.13)

Updates `github.com/fatih/color` from 1.14.1 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/hashicorp/go-hclog` from 1.5.0 to 1.6.3
- [Release notes](https://github.com/hashicorp/go-hclog/releases)
- [Commits](https://github.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.3)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.9 to 0.2.0
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.8.4 to 1.10.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.59.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `github.com/hashicorp/go-kms-wrapping/plugin/v2` from 2.0.7 to 2.0.8
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.7...v2.0.8)

Updates `github.com/hashicorp/go-kms-wrapping/wrappers/ocikms/v2` from 2.0.8 to 2.0.9
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.8...v2.0.9)

Updates `github.com/fatih/color` from 1.16.0 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.7 to 0.1.9
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/hashicorp/vault/api` from 1.10.0 to 1.16.0
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/v1.12.0...v1.16.0)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.8.4 to 1.10.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/grpc` from 1.59.0 to 1.72.1
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `golang.org/x/time` from 0.3.0 to 0.11.0
- [Commits](https://github.com/golang/time/compare/v0.5.0...v0.11.0)

Updates `github.com/hashicorp/go-kms-wrapping/plugin/v2` from 2.0.7 to 2.0.8
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.7...v2.0.8)

Updates `github.com/hashicorp/go-kms-wrapping/wrappers/transit/v2` from 2.0.12 to 2.0.13
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.12...v2.0.13)

Updates `github.com/fatih/color` from 1.15.0 to 1.18.0
- [Release notes](https://github.com/fatih/color/releases)
- [Commits](https://github.com/fatih/color/compare/v1.17.0...v1.18.0)

Updates `github.com/golang/protobuf` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/golang/protobuf/releases)
- [Commits](https://github.com/golang/protobuf/compare/v1.5.3...v1.5.4)

Updates `github.com/grpc-ecosystem/grpc-gateway/v2` from 2.19.1 to 2.26.3
- [Release notes](https://github.com/grpc-ecosystem/grpc-gateway/releases)
- [Changelog](https://github.com/grpc-ecosystem/grpc-gateway/blob/main/.goreleaser.yml)
- [Commits](https://github.com/grpc-ecosystem/grpc-gateway/compare/v2.19.1...v2.26.3)

Updates `github.com/hashicorp/eventlogger` from 0.2.6-0.20231025104552-802587e608f0 to 0.2.11
- [Commits](https://github.com/hashicorp/eventlogger/compare/v0.2.9...v0.2.11)

Updates `github.com/hashicorp/go-hclog` from 1.5.0 to 1.6.3
- [Release notes](https://github.com/hashicorp/go-hclog/releases)
- [Commits](https://github.com/hashicorp/go-hclog/compare/v1.5.0...v1.6.3)

Updates `github.com/hashicorp/go-kms-wrapping/v2` from 2.0.16 to 2.0.18
- [Commits](https://github.com/hashicorp/go-kms-wrapping/commits/v2.0.18)

Updates `github.com/hashicorp/go-secure-stdlib/configutil/v2` from 2.0.11 to 2.0.12
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/configutil/v2.0.11...configutil/v2.0.12)

Updates `github.com/hashicorp/go-secure-stdlib/listenerutil` from 0.1.9 to 0.1.10
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...listenerutil/v0.1.10)

Updates `github.com/hashicorp/go-secure-stdlib/parseutil` from 0.1.8 to 0.1.9
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/parseutil/v0.1.9...awsutil/v0.2.0)

Updates `github.com/hashicorp/go-secure-stdlib/pluginutil/v2` from 2.0.6 to 2.0.8
- [Release notes](https://github.com/hashicorp/go-secure-stdlib/releases)
- [Commits](https://github.com/hashicorp/go-secure-stdlib/compare/configutil/v2.0.6...configutil/v2.0.8)

Updates `github.com/hashicorp/go-sockaddr` from 1.0.5 to 1.0.6
- [Release notes](https://github.com/hashicorp/go-sockaddr/releases)
- [Commits](https://github.com/hashicorp/go-sockaddr/compare/v1.0.6...v1.0.7)

Updates `github.com/mattn/go-colorable` from 0.1.13 to 0.1.14
- [Commits](https://github.com/mattn/go-colorable/compare/v0.1.13...v0.1.14)

Updates `github.com/stretchr/testify` from 1.8.4 to 1.9.0
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

Updates `golang.org/x/crypto` from 0.37.0 to 0.38.0
- [Commits](https://github.com/golang/crypto/compare/v0.37.0...v0.38.0)

Updates `golang.org/x/net` from 0.39.0 to 0.40.0
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

Updates `golang.org/x/sys` from 0.32.0 to 0.33.0
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

Updates `golang.org/x/text` from 0.24.0 to 0.25.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.24.0...v0.25.0)

Updates `google.golang.org/genproto/googleapis/api` from 0.0.0-20240125205218-1f4bbc51befe to 0.0.0-20250303144028-a0af3efb3deb
- [Commits](https://github.com/googleapis/go-genproto/commits)

Updates `google.golang.org/grpc` from 1.61.0 to 1.70.0
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.61.0...v1.72.1)

Updates `google.golang.org/protobuf` from 1.36.1 to 1.36.5

Updates `nhooyr.io/websocket` from 1.8.10 to 1.8.17
- [Release notes](https://github.com/nhooyr/websocket-old/releases)
- [Commits](https://github.com/nhooyr/websocket-old/commits/v1.8.17)

Updates `github.com/hashicorp/go-kms-wrapping/plugin/v2` from 2.0.7 to 2.0.8
- [Commits](https://github.com/hashicorp/go-kms-wrapping/compare/v2.0.7...v2.0.8)

---
updated-dependencies:
- dependency-name: github.com/cenkalti/backoff/v4
  dependency-version: 4.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/creack/pty
  dependency-version: 1.1.24
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
- dependency-name: github.com/docker/docker
  dependency-version: 28.1.1+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: go
- dependency-name: github.com/fatih/color
  dependency-version: 1.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/glebarez/sqlite
  dependency-version: 1.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/golang-migrate/migrate/v4
  dependency-version: 4.18.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/golang/protobuf
  dependency-version: 1.5.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
- dependency-name: github.com/google/go-cmp
  dependency-version: 0.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/grpc-ecosystem/grpc-gateway/v2
  dependency-version: 2.26.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/hashicorp/cap
  dependency-version: 0.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/hashicorp/eventlogger
  dependency-version: 0.2.11
  dependency-type: direct:production
  update-type: version-...

Signed-off-by: dependabot[bot] <support@github.com>

* mod: downgrade/upgrade some dependencies to fix build

* all: regenerate protobuf files

* internal: rerun gofumpt

* internal/cmd/config: fix test after change of behavior

* internal/daemon/controlller: explicitly disable gRPC Client DNS resolution

It seems that the gRPC client update caused it to dislike our empty connection
string. Explicitly pass through DNS resolution using the "passthrough" resolver.

* testing/e2e: update test type reference

Docker changed the type here apparently

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>
2025-05-23 09:42:26 -07:00

632 lines
23 KiB
Go

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: BUSL-1.1
package vault
import (
"context"
"database/sql"
"fmt"
"slices"
"strings"
"time"
"github.com/hashicorp/boundary/globals"
"github.com/hashicorp/boundary/internal/credential"
"github.com/hashicorp/boundary/internal/db"
"github.com/hashicorp/boundary/internal/db/timestamp"
"github.com/hashicorp/boundary/internal/errors"
"github.com/hashicorp/boundary/internal/kms"
"github.com/hashicorp/boundary/internal/oplog"
"github.com/hashicorp/go-dbw"
"github.com/hashicorp/go-secure-stdlib/strutil"
)
// CreateCredentialLibrary inserts l into the repository and returns a new
// CredentialLibrary containing the credential library's PublicId. l is not
// changed. l must contain a valid StoreId. l must not contain a PublicId.
// The PublicId is generated and assigned by this method.
//
// Both l.Name and l.Description are optional. If l.Name is set, it must be
// unique within l.StoreId.
//
// Both l.CreateTime and l.UpdateTime are ignored.
func (r *Repository) CreateCredentialLibrary(ctx context.Context, projectId string, l *CredentialLibrary, _ ...Option) (*CredentialLibrary, error) {
const op = "vault.(Repository).CreateCredentialLibrary"
if l == nil {
return nil, errors.New(ctx, errors.InvalidParameter, op, "nil CredentialLibrary")
}
if l.CredentialLibrary == nil {
return nil, errors.New(ctx, errors.InvalidParameter, op, "nil embedded l")
}
if l.StoreId == "" {
return nil, errors.New(ctx, errors.InvalidParameter, op, "no store id")
}
if l.VaultPath == "" {
return nil, errors.New(ctx, errors.InvalidParameter, op, "no vault path")
}
if l.PublicId != "" {
return nil, errors.New(ctx, errors.InvalidParameter, op, "public id not empty")
}
if projectId == "" {
return nil, errors.New(ctx, errors.InvalidParameter, op, "no project id")
}
l = l.clone()
if l.HttpMethod == "" {
l.HttpMethod = string(MethodGet)
}
if err := l.validate(ctx, op); err != nil {
return nil, err // intentionally not wrapped.
}
id, err := newCredentialLibraryId(ctx)
if err != nil {
return nil, errors.Wrap(ctx, err, op)
}
l.setId(id)
oplogWrapper, err := r.kms.GetWrapper(ctx, projectId, kms.KeyPurposeOplog)
if err != nil {
return nil, errors.Wrap(ctx, err, op, errors.WithMsg("unable to get oplog wrapper"))
}
var newCredentialLibrary *CredentialLibrary
_, err = r.writer.DoTx(ctx, db.StdRetryCnt, db.ExpBackoff{},
func(_ db.Reader, w db.Writer) error {
var msgs []*oplog.Message
ticket, err := w.GetTicket(ctx, l)
if err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to get ticket"))
}
// insert credential library
newCredentialLibrary = l.clone()
var lOplogMsg oplog.Message
if err := w.Create(ctx, newCredentialLibrary, db.NewOplogMsg(&lOplogMsg)); err != nil {
return errors.Wrap(ctx, err, op)
}
msgs = append(msgs, &lOplogMsg)
// insert mapper override (if exists)
if l.MappingOverride != nil {
var msg oplog.Message
if err := w.Create(ctx, newCredentialLibrary.MappingOverride, db.NewOplogMsg(&msg)); err != nil {
return errors.Wrap(ctx, err, op)
}
newCredentialLibrary.MappingOverride.sanitize()
msgs = append(msgs, &msg)
}
metadata := l.oplog(oplog.OpType_OP_TYPE_CREATE)
if err := w.WriteOplogEntryWith(ctx, oplogWrapper, ticket, metadata, msgs); err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to write oplog"))
}
return nil
},
)
if err != nil {
if errors.IsUniqueError(err) {
return nil, errors.Wrap(ctx, err, op, errors.WithMsg(fmt.Sprintf("in credential store: %s: name %s already exists", l.StoreId, l.Name)))
}
return nil, errors.Wrap(ctx, err, op, errors.WithMsg(fmt.Sprintf("in credential store: %s", l.StoreId)))
}
return newCredentialLibrary, nil
}
// UpdateCredentialLibrary updates the repository entry for l.PublicId with
// the values in l for the fields listed in fieldMaskPaths. It returns a
// new CredentialLibrary containing the updated values and a count of the
// number of records updated. l is not changed.
//
// l must contain a valid PublicId. Only Name, Description, VaultPath,
// HttpMethod, HttpRequestBody, and MappingOverride can be updated. If
// l.Name is set to a non-empty string, it must be unique within l.StoreId.
//
// An attribute of l will be set to NULL in the database if the attribute
// in l is the zero value and it is included in fieldMaskPaths except for
// HttpMethod. If HttpMethod is in the fieldMaskPath but l.HttpMethod
// is not set it will be set to the value "GET". If storage has a value
// for HttpRequestBody when l.HttpMethod is set to GET the update will fail.
func (r *Repository) UpdateCredentialLibrary(ctx context.Context, projectId string, l *CredentialLibrary, version uint32, fieldMaskPaths []string, _ ...Option) (*CredentialLibrary, int, error) {
const op = "vault.(Repository).UpdateCredentialLibrary"
if l == nil {
return nil, db.NoRowsAffected, errors.New(ctx, errors.InvalidParameter, op, "missing CredentialLibrary")
}
if l.CredentialLibrary == nil {
return nil, db.NoRowsAffected, errors.New(ctx, errors.InvalidParameter, op, "missing embedded CredentialLibrary")
}
if l.PublicId == "" {
return nil, db.NoRowsAffected, errors.New(ctx, errors.InvalidPublicId, op, "missing public id")
}
if version == 0 {
return nil, db.NoRowsAffected, errors.New(ctx, errors.InvalidParameter, op, "missing version")
}
if projectId == "" {
return nil, db.NoRowsAffected, errors.New(ctx, errors.InvalidParameter, op, "missing project id")
}
l = l.clone()
var updateMappingOverride bool
for _, f := range fieldMaskPaths {
switch {
case strings.EqualFold(nameField, f):
case strings.EqualFold(descriptionField, f):
case strings.EqualFold(vaultPathField, f):
case strings.EqualFold(httpMethodField, f):
case strings.EqualFold(httpRequestBodyField, f):
case strings.EqualFold(MappingOverrideField, f):
updateMappingOverride = true
default:
return nil, db.NoRowsAffected, errors.New(ctx, errors.InvalidFieldMask, op, f)
}
}
var dbMask, nullFields []string
dbMask, nullFields = dbw.BuildUpdatePaths(
map[string]any{
nameField: l.Name,
descriptionField: l.Description,
vaultPathField: l.VaultPath,
httpMethodField: l.HttpMethod,
httpRequestBodyField: l.HttpRequestBody,
MappingOverrideField: l.MappingOverride,
},
fieldMaskPaths,
nil,
)
if strutil.StrListContains(nullFields, httpMethodField) {
// GET is the default value for the HttpMethod field in
// CredentialLibrary. The http_method column in the database does
// not allow NULL values but it also does not define a default
// value. Therefore, if the httpMethodField is in nullFields:
// remove it from nullFields then add it to dbMask and set the
// value to GET.
dbMask = append(dbMask, httpMethodField)
nullFields = strutil.StrListDelete(nullFields, httpMethodField)
l.HttpMethod = string(MethodGet)
}
if len(dbMask) == 0 && len(nullFields) == 0 {
return nil, db.NoRowsAffected, errors.New(ctx, errors.EmptyFieldMask, op, "missing field mask")
}
origLib, err := r.LookupCredentialLibrary(ctx, l.PublicId)
switch {
case err != nil:
return nil, db.NoRowsAffected, errors.Wrap(ctx, err, op)
case origLib == nil:
return nil, db.NoRowsAffected, errors.New(ctx, errors.RecordNotFound, op, fmt.Sprintf("credential library %s", l.PublicId))
case updateMappingOverride && !validMappingOverride(l.MappingOverride, origLib.CredentialType()):
return nil, db.NoRowsAffected, errors.New(ctx, errors.VaultInvalidMappingOverride, op, "invalid mapping override for credential type")
}
var filteredDbMask, filteredNullFields []string
for _, f := range dbMask {
switch {
case strings.EqualFold(MappingOverrideField, f):
default:
filteredDbMask = append(filteredDbMask, f)
}
}
for _, f := range nullFields {
switch {
case strings.EqualFold(MappingOverrideField, f):
default:
filteredNullFields = append(filteredNullFields, f)
}
}
oplogWrapper, err := r.kms.GetWrapper(ctx, projectId, kms.KeyPurposeOplog)
if err != nil {
return nil, db.NoRowsAffected, errors.Wrap(ctx, err, op, errors.WithCode(errors.Encrypt),
errors.WithMsg("unable to get oplog wrapper"))
}
var rowsUpdated int
var returnedCredentialLibrary *CredentialLibrary
_, err = r.writer.DoTx(ctx, db.StdRetryCnt, db.ExpBackoff{},
func(rr db.Reader, w db.Writer) error {
var msgs []*oplog.Message
ticket, err := w.GetTicket(ctx, l)
if err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to get ticket"))
}
l := l.clone()
var lOplogMsg oplog.Message
// Update the credential library table
switch {
case len(filteredDbMask) == 0 && len(filteredNullFields) == 0:
// the credential library's fields are not being updated,
// just one of it's child objects, so we just need to
// update the library's version.
l.Version = version + 1
rowsUpdated, err = w.Update(ctx, l, []string{"Version"}, nil, db.NewOplogMsg(&lOplogMsg), db.WithVersion(&version))
if err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to update credential library version"))
}
switch rowsUpdated {
case 1:
case 0:
return nil
default:
return errors.New(ctx, errors.MultipleRecords, op, fmt.Sprintf("updated credential library version and %d rows updated", rowsUpdated))
}
default:
rowsUpdated, err = w.Update(ctx, l, filteredDbMask, filteredNullFields, db.NewOplogMsg(&lOplogMsg), db.WithVersion(&version))
if err != nil {
if errors.IsUniqueError(err) {
return errors.New(ctx, errors.NotUnique, op,
fmt.Sprintf("name %s already exists: %s", l.Name, l.PublicId))
}
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to update credential library"))
}
switch rowsUpdated {
case 1:
case 0:
return nil
default:
return errors.New(ctx, errors.MultipleRecords, op, fmt.Sprintf("updated credential library and %d rows updated", rowsUpdated))
}
}
msgs = append(msgs, &lOplogMsg)
// Update a credential mapping override table if applicable
if updateMappingOverride {
// delete the current mapping override if it exists
if origLib.MappingOverride != nil {
var msg oplog.Message
rowsDeleted, err := w.Delete(ctx, origLib.MappingOverride, db.NewOplogMsg(&msg))
switch {
case err != nil:
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to delete mapping override"))
default:
switch rowsDeleted {
case 0, 1:
default:
return errors.New(ctx, errors.MultipleRecords, op, fmt.Sprintf("delete mapping override and %d rows deleted", rowsDeleted))
}
}
msgs = append(msgs, &msg)
}
// insert a new mapping override if specified
if l.MappingOverride != nil {
var msg oplog.Message
l.MappingOverride.setLibraryId(l.PublicId)
if err := w.Create(ctx, l.MappingOverride, db.NewOplogMsg(&msg)); err != nil {
return errors.Wrap(ctx, err, op)
}
msgs = append(msgs, &msg)
}
}
metadata := l.oplog(oplog.OpType_OP_TYPE_UPDATE)
if err := w.WriteOplogEntryWith(ctx, oplogWrapper, ticket, metadata, msgs); err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to write oplog"))
}
pl := allocListLookupLibrary()
pl.PublicId = l.PublicId
if err := rr.LookupByPublicId(ctx, pl); err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("unable to retrieve updated credential library"))
}
returnedCredentialLibrary = pl.toCredentialLibrary()
return nil
},
)
if err != nil {
if errors.IsUniqueError(err) {
return nil, db.NoRowsAffected, errors.New(ctx, errors.NotUnique, op,
fmt.Sprintf("name %s already exists: %s", l.Name, l.PublicId))
}
return nil, db.NoRowsAffected, errors.Wrap(ctx, err, op, errors.WithMsg(l.PublicId))
}
return returnedCredentialLibrary, rowsUpdated, nil
}
// LookupCredentialLibrary returns the CredentialLibrary for publicId.
// Returns nil, nil if no CredentialLibrary is found for publicId.
func (r *Repository) LookupCredentialLibrary(ctx context.Context, publicId string, _ ...Option) (*CredentialLibrary, error) {
const op = "vault.(Repository).LookupCredentialLibrary"
if publicId == "" {
return nil, errors.New(ctx, errors.InvalidParameter, op, "no public id")
}
l := allocListLookupLibrary()
l.PublicId = publicId
if err := r.reader.LookupByPublicId(ctx, l); err != nil {
if errors.IsNotFoundError(err) {
return nil, nil
}
return nil, errors.Wrap(ctx, err, op, errors.WithMsg(fmt.Sprintf("failed for: %s", publicId)))
}
return l.toCredentialLibrary(), nil
}
// listLookupLibrary is a credential library and any of library's credential
// mapping overrides. It does not include encrypted data and is safe to
// return external to boundary.
type listLookupLibrary struct {
PublicId string `gorm:"primary_key"`
StoreId string
Name string
Description string
CreateTime *timestamp.Timestamp
UpdateTime *timestamp.Timestamp
Version uint32
VaultPath string
HttpMethod string
HttpRequestBody []byte
CredentialType string
UsernameAttribute string
PasswordAttribute string
PrivateKeyAttribute string
PrivateKeyPassphraseAttribute string
}
func allocListLookupLibrary() *listLookupLibrary {
return &listLookupLibrary{}
}
func (pl *listLookupLibrary) toCredentialLibrary() *CredentialLibrary {
cl := allocCredentialLibrary()
cl.PublicId = pl.PublicId
cl.StoreId = pl.StoreId
cl.Name = pl.Name
cl.Description = pl.Description
cl.CreateTime = pl.CreateTime
cl.UpdateTime = pl.UpdateTime
cl.Version = pl.Version
cl.VaultPath = pl.VaultPath
cl.HttpMethod = pl.HttpMethod
cl.HttpRequestBody = pl.HttpRequestBody
cl.CredentialLibrary.CredentialType = pl.CredentialType
switch pl.CredentialType {
case string(globals.UsernamePasswordCredentialType):
if pl.UsernameAttribute != "" || pl.PasswordAttribute != "" {
up := allocUsernamePasswordOverride()
up.LibraryId = pl.PublicId
up.UsernameAttribute = pl.UsernameAttribute
up.PasswordAttribute = pl.PasswordAttribute
up.sanitize()
cl.MappingOverride = up
}
case string(globals.SshPrivateKeyCredentialType):
if pl.UsernameAttribute != "" || pl.PrivateKeyAttribute != "" || pl.PrivateKeyPassphraseAttribute != "" {
pk := allocSshPrivateKeyOverride()
pk.LibraryId = pl.PublicId
pk.UsernameAttribute = pl.UsernameAttribute
pk.PrivateKeyAttribute = pl.PrivateKeyAttribute
pk.PrivateKeyPassphraseAttribute = pl.PrivateKeyPassphraseAttribute
pk.sanitize()
cl.MappingOverride = pk
}
}
return cl
}
// TableName returns the table name for gorm.
func (*listLookupLibrary) TableName() string { return "credential_vault_library_list_lookup" }
// GetPublicId returns the public id.
func (pl *listLookupLibrary) GetPublicId() string { return pl.PublicId }
// DeleteCredentialLibrary deletes publicId from the repository and returns
// the number of records deleted.
func (r *Repository) DeleteCredentialLibrary(ctx context.Context, projectId string, publicId string, _ ...Option) (int, error) {
const op = "vault.(Repository).DeleteCredentialLibrary"
if publicId == "" {
return db.NoRowsAffected, errors.New(ctx, errors.InvalidParameter, op, "no public id")
}
if projectId == "" {
return db.NoRowsAffected, errors.New(ctx, errors.InvalidParameter, op, "no project id")
}
l := allocCredentialLibrary()
l.PublicId = publicId
oplogWrapper, err := r.kms.GetWrapper(ctx, projectId, kms.KeyPurposeOplog)
if err != nil {
return db.NoRowsAffected, errors.Wrap(ctx, err, op, errors.WithMsg("unable to get oplog wrapper"))
}
var rowsDeleted int
_, err = r.writer.DoTx(
ctx, db.StdRetryCnt, db.ExpBackoff{},
func(_ db.Reader, w db.Writer) (err error) {
dl := l.clone()
rowsDeleted, err = w.Delete(ctx, dl, db.WithOplog(oplogWrapper, l.oplog(oplog.OpType_OP_TYPE_DELETE)))
if err == nil && rowsDeleted > 1 {
return errors.New(ctx, errors.MultipleRecords, op, "more than 1 CredentialLibrary would have been deleted")
}
return err
},
)
if err != nil {
return db.NoRowsAffected, errors.Wrap(ctx, err, op, errors.WithMsg(fmt.Sprintf("delete failed for %s", l.PublicId)))
}
return rowsDeleted, nil
}
// ListLibraries returns a slice of CredentialLibraries for the
// storeId. Supports the following options:
// - credential.WithLimit
// - credential.WithStartPageAfterItem
func (r *Repository) ListLibraries(ctx context.Context, storeId string, opt ...credential.Option) ([]credential.Library, time.Time, error) {
const op = "vault.(Repository).ListLibraries"
if storeId == "" {
return nil, time.Time{}, errors.New(ctx, errors.InvalidParameter, op, "missing store id")
}
opts, err := credential.GetOpts(opt...)
if err != nil {
return nil, time.Time{}, errors.Wrap(ctx, err, op)
}
limit := r.defaultLimit
if opts.WithLimit != 0 {
// non-zero signals an override of the default limit for the repo.
limit = opts.WithLimit
}
query := fmt.Sprintf(listLibrariesTemplate, limit)
args := []any{sql.Named("store_id", storeId)}
if opts.WithStartPageAfterItem != nil {
query = fmt.Sprintf(listLibrariesPageTemplate, limit)
args = append(args,
sql.Named("last_item_create_time", opts.WithStartPageAfterItem.GetCreateTime()),
sql.Named("last_item_id", opts.WithStartPageAfterItem.GetPublicId()),
)
}
libs, transactionTimestamp, err := r.queryLibraries(ctx, query, args)
if err != nil {
return nil, time.Time{}, errors.Wrap(ctx, err, op)
}
// Sort final slice to ensure correct ordering.
// We sort by create time descending (most recently created first).
slices.SortFunc(libs, func(i, j credential.Library) int {
return j.GetCreateTime().AsTime().Compare(i.GetCreateTime().AsTime())
})
return libs, transactionTimestamp, nil
}
// ListLibrariesRefresh returns a slice of credential libraries
// for the store ID. Supports the following options:
// - credential.WithLimit
// - credential.WithStartPageAfterItem
func (r *Repository) ListLibrariesRefresh(ctx context.Context, storeId string, updatedAfter time.Time, opt ...credential.Option) ([]credential.Library, time.Time, error) {
const op = "vault.(Repository).ListLibrariesRefresh"
switch {
case storeId == "":
return nil, time.Time{}, errors.New(ctx, errors.InvalidParameter, op, "missing credential store ID")
case updatedAfter.IsZero():
return nil, time.Time{}, errors.New(ctx, errors.InvalidParameter, op, "missing updated after time")
}
opts, err := credential.GetOpts(opt...)
if err != nil {
return nil, time.Time{}, errors.Wrap(ctx, err, op)
}
limit := r.defaultLimit
if opts.WithLimit != 0 {
// non-zero signals an override of the default limit for the repo.
limit = opts.WithLimit
}
query := fmt.Sprintf(listLibrariesRefreshTemplate, limit)
args := []any{
sql.Named("store_id", storeId),
sql.Named("updated_after_time", timestamp.New(updatedAfter)),
}
if opts.WithStartPageAfterItem != nil {
query = fmt.Sprintf(listLibrariesRefreshPageTemplate, limit)
args = append(args,
sql.Named("last_item_update_time", opts.WithStartPageAfterItem.GetUpdateTime()),
sql.Named("last_item_id", opts.WithStartPageAfterItem.GetPublicId()),
)
}
libs, transactionTimestamp, err := r.queryLibraries(ctx, query, args)
if err != nil {
return nil, time.Time{}, errors.Wrap(ctx, err, op)
}
// Sort final slice to ensure correct ordering.
// We sort by update time descending (most recently updated first).
slices.SortFunc(libs, func(i, j credential.Library) int {
return j.GetUpdateTime().AsTime().Compare(i.GetUpdateTime().AsTime())
})
return libs, transactionTimestamp, nil
}
func (r *Repository) queryLibraries(ctx context.Context, query string, args []any) ([]credential.Library, time.Time, error) {
const op = "vault.(Repository).queryLibraries"
var libs []credential.Library
var transactionTimestamp time.Time
if _, err := r.writer.DoTx(ctx, db.StdRetryCnt, db.ExpBackoff{}, func(rd db.Reader, w db.Writer) error {
rows, err := rd.Query(ctx, query, args)
if err != nil {
return errors.Wrap(ctx, err, op)
}
var results []listCredentialLibraryResult
for rows.Next() {
if err := rd.ScanRows(ctx, rows, &results); err != nil {
return errors.Wrap(ctx, err, op)
}
}
if err := rows.Err(); err != nil {
return errors.Wrap(ctx, err, op)
}
for _, result := range results {
lib, err := result.toLibrary(ctx)
if err != nil {
return errors.Wrap(ctx, err, op)
}
libs = append(libs, lib)
}
transactionTimestamp, err = rd.Now(ctx)
return err
}); err != nil {
return nil, time.Time{}, err
}
return libs, transactionTimestamp, nil
}
// EstimatedLibraryCount returns an estimate of the number of Vault credential libraries
func (r *Repository) EstimatedLibraryCount(ctx context.Context) (int, error) {
const op = "vault.(Repository).EstimatedLibraryCount"
rows, err := r.reader.Query(ctx, estimateCountCredentialLibraries, nil)
if err != nil {
return 0, errors.Wrap(ctx, err, op, errors.WithMsg("failed to query total vault credential libraries"))
}
var count int
for rows.Next() {
if err := r.reader.ScanRows(ctx, rows, &count); err != nil {
return 0, errors.Wrap(ctx, err, op, errors.WithMsg("failed to query total vault credential libraries"))
}
}
if err := rows.Err(); err != nil {
return 0, errors.Wrap(ctx, err, op, errors.WithMsg("failed to query total vault credential libraries"))
}
return count, nil
}
// ListDeletedLibraryIds lists the public IDs of any credential libraries deleted since the timestamp provided.
func (r *Repository) ListDeletedLibraryIds(ctx context.Context, since time.Time) ([]string, time.Time, error) {
const op = "vault.(Repository).ListDeletedLibraryIds"
var credentialLibraryIds []string
var transactionTimestamp time.Time
if _, err := r.writer.DoTx(ctx, db.StdRetryCnt, db.ExpBackoff{}, func(r db.Reader, w db.Writer) error {
var deletedCredentialLibraries []*deletedCredentialLibrary
if err := r.SearchWhere(ctx, &deletedCredentialLibraries, "delete_time >= ?", []any{since}); err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("failed to query deleted credential libraries"))
}
for _, cl := range deletedCredentialLibraries {
credentialLibraryIds = append(credentialLibraryIds, cl.PublicId)
}
var deletedSshCredentialLibraries []*deletedSSHCertificateCredentialLibrary
if err := r.SearchWhere(ctx, &deletedSshCredentialLibraries, "delete_time >= ?", []any{since}); err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("failed to query deleted SSH certificate credential libraries"))
}
for _, cl := range deletedSshCredentialLibraries {
credentialLibraryIds = append(credentialLibraryIds, cl.PublicId)
}
var err error
transactionTimestamp, err = r.Now(ctx)
if err != nil {
return errors.Wrap(ctx, err, op, errors.WithMsg("failed to query transaction timestamp"))
}
return nil
}); err != nil {
return nil, time.Time{}, err
}
return credentialLibraryIds, transactionTimestamp, nil
}