Commit Graph

104 Commits

Author SHA1 Message Date
Gregory Cooke 911d5499f7
advancedTLS: Combine `ClientOptions` and `ServerOptions` to just `Options` (#7202)
* rename to Options

* added some documentation

* typos
2024-05-06 16:46:59 -04:00
Gregory Cooke 4879d51a59
advancedTLS: Swap to DenyUndetermined from AllowUndetermined in revocation settings (#7179)
* swap to `DenyUndetermined` from `AllowUndetermined`
2024-05-06 13:40:28 -04:00
Gregory Cooke befc29de93
advancedTLS: Rename {Min/Max}Version to {Min/Max}TLSVersion (#7173)
* rename `MinVersion` and `MaxVersion` to `MinTLSVersion` and `MaxTLSVersion`
2024-05-06 12:59:03 -04:00
Gregory Cooke b433b9467d
advancedtls: Rename RevocationConfig (#7151) 2024-04-30 11:00:35 -07:00
Gregory Cooke 5ab1c1ad93
advancedtls: Add notes about required vs. optional for FileWatcherOptions (#7165) 2024-04-30 09:44:07 -07:00
Arjan Singh Bal 4e8f9d4a1e
advancedtls: fix docstring for VerificationResults (#7168) 2024-04-24 07:41:14 -07:00
Arvind Bright cb9c22d501
vet: run staticcheck for all sub modules (#7155) 2024-04-23 11:47:30 -07:00
Gregory Cooke d75b5e2f5e
advancedtls: Rename custom verification function APIs (#7140)
* Rename custom verification function APIs
2024-04-23 14:20:28 -04:00
Gregory Cooke 5fe2e74bf4
advancedtls: Rename VType (#7149)
* renamed VType to VerificationType and add deprecation note
2024-04-19 14:02:42 -04:00
Elisha Silas 09e6fddbcd
Update docs and examples and tests to use NewClient instead of Dial (#7068)
Co-authored-by: Arvind Bright <arvind.bright100@gmail.com>
Co-authored-by: Doug Fawley <dfawley@google.com>
2024-04-19 10:55:23 -07:00
Gregory Cooke fc8da03081
advancedtls: unexport parts of API not meant to be public (#7118) 2024-04-17 08:32:56 -07:00
Doug Fawley f1cf6bf0b7
*: update http2 dependency (#7081) 2024-04-03 11:30:53 -07:00
Zach Reyes ba1bf9e7e0
deps: update dependencies for all modules (#7061) 2024-03-27 14:42:11 -04:00
Dmitry A. Shashkin c31fce824d
Update github.com/golang/protobuf and google.golang.org/protobuf modules (#7028) 2024-03-07 13:51:16 -08:00
Gina Yeh 27c5d98b94
deps: update dependencies for all modules (#7007) 2024-02-28 11:15:27 -08:00
Clément Jean 51f9cc0f35
deps: move from github.com/golang/protobuf to google.golang.org/protobuf/proto (#6961) 2024-02-28 09:58:48 -08:00
erm-g 408139acc3
security/advancedtls: CRL checks improvement (#6968) 2024-02-14 15:33:38 -08:00
Zach Reyes 5051eeae53
grpc: Update go mod (#6939) 2024-01-24 19:10:36 -05:00
Roland Bracewell Shoemaker 686fdd8da1
security/advancedtls: fix test that relies on min TLS version (#6824)
Bump the version in tls.ClientHelloInfo.SupportedVersions to
tls.VersionTLS12 (security/advancedtls/advancedtls_test.go)
2023-12-12 17:42:22 -05:00
erm-g 02ea031697
Bugfix for broken import (#6816) 2023-11-22 13:09:54 -05:00
Gregory Cooke 287c47355e
Mark old CRL APIs as deprecated (#6810) 2023-11-21 10:00:46 -05:00
Arvind Bright 40c279a85d
deps: update dependencies for all modules (#6795) 2023-11-14 12:58:37 -08:00
erm-g be1d1c10a9
security/advancedtls: FileWatcher CRL provider initialization enhancement (#6760)
* Add initial scan as a part of FWCP creation

* Add comment about default value for RefreshDuration

* Promote Close() to the interface level

* Revert "Promote Close() to the interface level"

This reverts commit 465ebacc5c.
2023-11-08 14:10:14 -05:00
erm-g b82468a346
crl provider: Static and FileWatcher provider implementations (#6670)
* rename certificateListExt to CRL

* CRLProvider file

* Add CRLProvider to RevocationConfig

* Beginning refactor of CRL handling

* Shell of StaticCRLProvider

* basic static crl provider test

* use loadCRL helper

* refactor of CRL loading

* Table tests

* Table tests

* Add tests with Static CRL provider

* New certs to be used for CRL tests. Added test for passing and failing connections based on CRL check outcomes

* Main functionality of File Watcher (Directory) CRL provider

* Refactor async go routine, validate() func, add unit tests

* Custom error callback, related unit tests

* Error callback test improvement

* Comments for StaticCRLProvider

* Comments for public API

* go mod tidy

* Comments for tests

* Fix vet errors

* Change Static provider behavior to match C Core, address other PR comments

* Data race fix

* Test helper fn change

* Address PR comments

* Address PR comments (part 2)

* Migration from context to channel for controlling crl reloading goroutine

* Align in-memory CRL updates during directory scan to C++ behavior

* Improve comments for ScanCRLDirectory

* Base test case for Scan CRL Directory file manipulations

* full set of cases for CRL directory content manipulation

* Add comment for table test structure

* Fix for go.mod and go.sum

* Empty directoru workaround

* Delete deprecated crl functionality

* Restoring deprecated crl files

* Fit to grpctest.Tester pattern

* Update readme for crl provider tests

* Address PR comments

* Revert "Restoring deprecated crl files"

This reverts commit 56437603a4.

* Revert "Resolve conflicts with upstream - deletion of deprecated crl"

This reverts commit e0130640c46efd9a43649bf409c6e762ae66e225, reversing
changes made to 21f430135c.

Revert deletion

* Update link for gRFC proposal

* Address PR comments

* Address PR comments part 1

* Address PR comments part 2

* Address PR comments part 3

* Fix for go.mod and go.sum

* Fix comment typo

* Fix for gRFC tag

* Add more details to CRL api  godoc comments.

* Address PR comments

* Address PR comments

* Delete crl_deprecated.go and crl_deprecated_test.go

* Delete testdate/crl/provider/filewatcher directory and .gitignore under it

* Race test fix

* Address PR comments

* Address PR comments

* Refactor directory reloader test from checking size of crl map to querying individual entries approach

* Add extra case for RefreshDuration config test

* Update cpmment for table test structure

* Unexport scan scanCRLDirectory, drop related mutex, update the comments

* Update API comments, clear tmp dir after the tests

---------

Co-authored-by: Gregory Cooke <gregorycooke@google.com>
2023-10-30 20:41:22 -04:00
erm-g cb430bed4d
Delete deprecated CRL functionality (#6721) 2023-10-16 11:47:44 -04:00
Gina Yeh afaf31aeeb
deps: update dependencies for all modules (#6698)
* deps: update dependencies for all modules

* deps: update more dependencies
2023-10-06 12:02:06 -07:00
Doug Fawley 18059002a5
deps: update dependencies for all modules (#6582) 2023-08-29 13:46:27 -07:00
Doug Fawley fbff2abb0f
*: update `interface{}` to `any` and `go.mod` version to `go 1.19` (#6544) 2023-08-14 09:04:46 -07:00
Easwar Swaminathan d524b40946
multiple: update dependencies after 1.57 branch cut (#6452) 2023-07-18 14:09:46 -07:00
Chris Smith c9d3ea5673
deps: google.golang.org/genproto to latest in all modules (#6319) 2023-06-02 10:38:02 -07:00
Arvind Bright 16651f60dd
go.mod: update all dependencies (#6214) 2023-04-18 17:02:56 -07:00
Joel Jeske 81b30924fc
security/advancedtls: add TlsVersionOption to select desired min/max TLS versions (#6007)
Co-authored-by: ZhenLian <zhenlian.cs@gmail.com>
2023-04-10 12:27:04 -07:00
Easwar Swaminathan 415ccdf154
go.mod: update all dependencies after 1.54 branch cut (#6132) 2023-03-28 16:03:41 -07:00
Gregory Cooke 1d20f1b500
security/advancedtls: swap from deprecated pkix.CertificateList to x509.RevocationList (#6054)
Swap from deprecated pkix.CertificateList to x509.RevocationList

pkix.CertificateList is deprecated.
We have an internal wrapper around this for representing CRLs. This PR updates that wrapper to use the preferred x509.RevocationList.

This also replaces x509.ParseCRL (deprecated) with x509.ParseRevocationList. The former supported PEM input, while the latter requires DER, so I added a utility function parseRevocationList that does the PEM -> DER conversion if needed, taken from the x509.ParseCRL implementation.

The one issue here is that x509.RevocationList was introduced in golang 1.19. We are still supporting 1.18. To solve this, I've put build restrictions on crl.go and crl_test.go to only build on 1.19+. Also, I also added the files crl_deprecated.go and crl_deprecated_test.go, which are identical copies to the crl.go and crl_test.go files before this PR. They have the build restriction of <go1.19, so they will be used in the 1.18 build. This change is luckily very isolated and these are the only 2 files that needed the build restrictions.
2023-03-23 13:34:01 -04:00
Easwar Swaminathan 22608213b8
go.mod: upgrade golang.org/x/net to address CVE-2022-41723 (#6106) 2023-03-09 16:30:30 -08:00
Luwei Ge d02039b685
Deflake the integration test. (#6093)
The short test timeout was causing the DialContext to return an error
even if it was non-blocking when a large number of tests are executed
simultaneously. The way I think we should do with is to stick with the
normal time out but cancel the context promptly, instead of deferring it
at the end to release resources.
2023-03-09 12:28:57 -08:00
Mikhail Mazurskiy 379a2f676c
*: add missing colon to errorf messages to improve readability (#5911) 2023-01-17 16:11:47 -08:00
Doug Fawley bf3ad35240
*: update all dependencies (#5924) 2023-01-11 13:49:41 -08:00
Theodore Salvo f2fbb0e07e
Deprecate use of `ioutil` package (#5906)
Resolves https://github.com/grpc/grpc-go/issues/5897
2023-01-03 11:20:20 -08:00
Doug Fawley 22c1fd2e10
deps: update golang.org/x/net to latest in all modules (#5847) 2022-12-07 10:52:31 -08:00
Gregory Cooke 617d6c8a6c
security/advancedtls: add test for crl cache expiration behavior (#5749)
* Add test for cache reloading

* cleanup

* swap to using nil for no revoked certs

* Add description for new test
2022-12-01 14:09:57 -05:00
Doug Fawley 50be6ae2f9
go.mod: update all dependencies (#5803) 2022-11-18 10:56:02 -08:00
Doug Fawley 824f44910d
go.mod: upgrade x/text to v0.4 to address CVE (#5769) 2022-11-07 07:51:22 -08:00
Doug Fawley 778860e606
testing: update Go to 1.19 (#5717) 2022-10-17 15:04:34 -07:00
Abirdcfly c351f37ddc
chore: remove duplicate word in comments (#5616) 2022-08-30 14:01:37 -07:00
Zach Reyes 4e780933f8
xds: ignore routes with unsupported cluster specifiers (#5269) 2022-03-31 11:02:26 -07:00
ZhenLian e63e1230fd
advancedtls: remove the usage of CDP in CRL enforcement (#5218) 2022-03-25 09:58:06 -07:00
Eric Butler ebc30b8fc3
reflection: use protobuf/reflect instead of go reflection, fix dynamic messages (#5180) 2022-02-15 11:01:42 -08:00
Roland Bracewell Shoemaker 231ca3b24e
security/advancedtls: fix CRL issuer comparison (#5130)
Fix CRL issuer comparison issue
2022-01-25 13:32:27 -08:00
Easwar Swaminathan 01ed64857e
update go.mod to point to latest cncf/udpa repo (#4884) 2021-10-18 15:12:44 -07:00