-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cleanup system-internal-tls secrets and labels #14392
Comments
yeah I'm on board for cleaning up. I think there were good intentions in adding all the future-looking stuff, but currently it is hard to understand the state of what actually works. Adding them back piece by piece when we get to it sounds good. So would your proposed cleanups essentially bring us back to where the And then as net-* providers support multi-SAN, they start using it?
Does there need to be any change in serving to allow the use of this type of SAN? Or does it already exist? I'm a little behind on the current state of things. |
Exactly this 💯
Yes. The current certs contain each two SANs:
I'm working on updating Activator + QP to serve the new certs (with WDYT? |
@KauzClay @nak3 |
The kourier change looks good. But I'm still not clear how serving/pkg/activator/certificate/cache.go Line 105 in 2002b38
|
That is a good point. I stumbled upon that in #14399. IMHO, for now we can stay on |
Ah, I realized that activator can trust QP's So, I think we should make certs have one SAN like this?
If we will use |
Yeah thats a good point and an even better solution for activator 👍 I think its good to have the second SAN in there for the transition period, for example during an update, theoretically the QP could already host the new cert and activator is still on rolling-update only trusting the old SAN. So with having both this is reverse compatible. But we definitely can drop the second SAN afterwards (assuming we keep activator in path for contour + gw-api or use SNI on activator). |
Yes, absolutely agree. |
Created an issue for this: #14402. Feel free to grab it if you like. |
Cleanup and usage of new secrets will be tracked here. /close |
@ReToCode: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Context
The changes with regards to internal-encryption and mTLS contained code that was targeting future features. This results in currently having additional Secrets with certificates that are unused. Also we have a concept of
routing-id
on certain certificates, that (at least currently) has no meaning and makes finishing thesystem-internal-tls
feature more complex and unintuitive.An example of this is, I wanted to update
net-kourier
to use the new secrets and trust multiple SANs on upstream backends, but do do that,net-kourier
needs to trust the SAN of the activator which (currently) implies manually settingrouting-id=0
innet-kourier
in code - which is coupling to internas of how Activator currently get's it certificates. If we want to have multiple routing-ids in the future, we need some sort of API to get the existing routing-ids and dynamically populate them in the net-* implementations.So for now, we need to do some cleanup to complete the
system-internal-tls
feature.Things to cleanup
Knative Services
namespace withrouting-id
. We can drop this as it is unnecessary.routing-id
) -->DataPlaneRoutingSAN
LegacyFakeDnsName
and need to be updated to trusting:DataPlaneRoutingSAN
+DataPlaneUserSAN(ns)
DataPlaneRoutingSAN
The text was updated successfully, but these errors were encountered: