kyma-project / api-gateway

Apache License 2.0
4 stars 26 forks source link

Introduction of APIRule v1beta2 with noAuth and JWT handlers #986

Closed strekm closed 3 months ago

strekm commented 5 months ago

Description

Based on accepted API proposal and POC covering technical details introduce new version of APIRule CRD. Introduced version will not be stored version. Users still have possibility to create v1beta1, that is still stored version.

New v1beta2 version should introduce 2 handlers: noAuth and JWT. noAuth handler is already released with v1beta1, so conversion is possible both ways. Also logic of noAuth is no different. JWT also exists in v1beta1 version but logic is based on ORY Oathkeeper. in v1beta2 logic behind JWT should be purely Istio based.

In case of Istio based JWT additional validation should be implemented enforcing sidecar injection on a workload.

We decided to have v1beta1 as storage version having preserveUnknownFields for v1beta2 spec fields. We keep v1beta2 clean without preserveUnknownFields. After customer manually adapted all APIRules we switch storage version. Migration step will be needed before dropping v1beta1.

Open questions to consider:

TODOs: @werdes72

@videlov

ACs:

Reasons

Introduction of stable APIRule

DoD:

Attachments part of: https://github.com/kyma-project/api-gateway/issues/939 https://github.com/kyma-project/api-gateway/issues/940 https://github.com/kyma-project/api-gateway/issues/970

PRs: