Description
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:
- Get the secret
- Split the correlation id
- Sign the original id
- 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
Projects
Status
No status