Dataplane-trust Adding mTLS and TLS To Activator#13969
Dataplane-trust Adding mTLS and TLS To Activator#13969davidhadas wants to merge 38 commits intoknative:mainfrom
Conversation
Sorry if I misunderstand but do you mean If the change will not affect a large area or at least we can manage it, I think it is OK to move forward this PR. I would like to wait for other reviewers, though. |
Yes, you are correct, I am referring to We have a couple of options: one is to have a PR that detach from the parts of
Since *http.Transport offers http.RoundTripper interface, it seems e can do the changes in Changing The other option is to add new exportables to |
Actually that's what I wanted to confirm 😄 If it does not change the contract for caller, I think the change does not affect so much and it should be alright. |
|
This was later reverted |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #13969 +/- ##
==========================================
- Coverage 86.22% 85.90% -0.33%
==========================================
Files 199 200 +1
Lines 14767 14878 +111
==========================================
+ Hits 12733 12781 +48
- Misses 1732 1798 +66
+ Partials 302 299 -3
☔ View full report in Codecov by Sentry. |
|
/retest |
|
/retest |
evankanderson
left a comment
There was a problem hiding this comment.
It looks like unit testing doesn't cover any of the added code in transport.go. What's the plan for coverage there? (New unit, integration, e2e?)
we apparently did not unit test transport n knative.dev/pkg also... so we are as bad as we use to be. We defiantly want to have e2e tests for all trust modes. Not for this PR. |
|
/retest |
|
This is one in a series of PRs that all are based on the same design and follow the same logic and same plan that was discussed and agreed upon in the security WG. If we want to change this plan, we need to discuss it again, but since we are now halfway into the implementation (~5/~10 PRs), I am strongly against making changes to this plan mid-way. It is of course perfectly ok to make changes to the plan after we complete the first round - preferably after we also have e2e tests. It was decided that we will replace the internal-encryption with trust=minimal and build into the system a number of new, more advanced trust options. These more advanced trust options may have their limitations (e.g. must have an activator on-route) but we will work to try and remove such limitations as we move forward. It was discussed that sometime in the future - after we have the more advanced system in place and solve the limitations, we will remove trust=minimal, I am also not sure we will need trust=enabled if we get mTLS working without limitations, so maybe trust=mutual will be our baseline. But all of that is for the future. This PR, same as other PRs already merged, follows this path. |
|
/retest |
|
See #13968 |
Fixes #13968
This PR implements dataplane-trust options of the Activator.
Code from
knative/pkg/network/transports.gowas modified and moved here toactivator/handler/transport.go.The code at
activator/handler/transport.godepends onactivator/handler/context.goand therefore cannot be moved back toknative/pkg/network/transports.goLeaving Queue changes to a separate PR
Release Note