knative / knative/serving

Create Conformance Test Suite for Internal Encryption

Open
#13,855 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

area/API area/networking area/test-and-release kind/feature triage/accepted
Dominant language
Go
Stars
6.1k
Forks
1.2k
Avg merge
2d 7h
Merged PRs (30d)
2

Description

/area API
/area networking
/area test-and-release

Describe the feature

In support of https://github.com/knative/serving/issues/11906
notes/discussion

We should cover the following scenarios:

  • Basic test to call local ingress-gateway with TLS and check the returned certificate
  • Basic test to call activator (without ingress-gateway) with TLS and check the returned certificates
  • Basic test to call QP (without ingress-gateway and activator) with TLS and check the returned certificates
  • Test with domain-mapping, check if the call to the ingress-gateway and local ingress gateway is done with TLS, check the returned certificates
  • Test with http2, check the returned certificates

Depending on the implementation decisions, we should also add:

  • Test to check if the ingress implementation is checking the upstream SAN with multiple values (activator SAN + QP SAN)
  • Define and check what SNI information the ingress-gateway sends to upstream backends.

Some or all of these tests may need to also existing the Networking repo, since we will want to make sure ingress-controllers call and validate upstream connections correctly (so instead of activator/qp we can use a custom pod to check).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or test entry points are named. Start with knative/serving#11906 and the linked discussion notes, then determine whether coverage belongs in this repository or the Networking repository. Done means the agreed TLS, certificate, domain-mapping, HTTP/2, SAN, and SNI scenarios are covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
networking, security, testing-qa
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.