Skip to content

RequestReply: Add CESQL function #8318

Open
@Cali0707

Description

@Cali0707

Problem
For the RequestReply resource, we need to create a CESQL function KN_VERIFY_CORRELATIONID(correlationid, secretName1, secretName2, ...) which verifies that the correlation id being used is valid. To do this, the correlation id is formatted as follows:

<original id>:<original id signed with a secret key>

The CESQL function should sign the original id and see if it matches the original id signed with a secret key referenced in the correlation id.

CESQL can be extended with new functions as follows: https://github.com/cloudevents/sdk-go/blob/24f83eb0a86d9cd7f4f28759f823fa77f58b0910/sql/v2/runtime/test/user_defined_functions_test.go#L33-L57

The function should:

  1. Get the secret
  2. Split the correlation id
  3. Sign the original id
  4. Return true iff the signed id matches the second half of the split correlation id

Persona:
Which persona is this feature for?

Exit Criteria
Unit tests of CESQL expressions that pass/fail

Time Estimate (optional):
How many developer-days do you think this may take to resolve? 1-2

Additional context (optional)
Add any other context about the feature request here.

Metadata

Metadata

Assignees

Type

No type

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions