[SERVER-67263] Reject InsertUpdatePayload with mismatched IndexKeyId Created: 14/Jun/22 Updated: 29/Oct/23 Resolved: 28/Jul/22 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Field Level Encryption |
| Affects Version/s: | None |
| Fix Version/s: | 6.1.0-rc0 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Kevin Albertson | Assignee: | Sara Golemon |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Backwards Compatibility: | Minor Change |
| Sprint: | Security 2022-07-11, Security 2022-07-25, Security 2022-08-08 |
| Participants: |
| Description |
|
Scope
Background & Motivation The InsertUpdatePayload includes the IndexKeyId here. The IndexKeyId is expected to match the "keyId" specified on encryptedFields. A mistaken insert with an incorrect IndexKeyId results in incorrect query results and non-obvious errors. Example 1:
Will not find the inserted document. Example 2:
Returns this server error:
These scenarios were tested with the Go driver here and can be run with:
|