File tree Expand file tree Collapse file tree 2 files changed +6
-5
lines changed
DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src Expand file tree Collapse file tree 2 files changed +6
-5
lines changed Original file line number Diff line number Diff line change @@ -90,10 +90,10 @@ module QueryTransform {
90
90
// # with the resulting decrypted [DynamoDB Item](./decrypt-item.md#dynamodb-item-1).
91
91
var decryptInput := EncTypes. DecryptItemInput (encryptedItem := encryptedItems[x]);
92
92
var decryptRes := tableConfig. itemEncryptor. DecryptItem (decryptInput);
93
-
94
93
var decrypted :- MapError (decryptRes);
95
- if keyId. KeyId? {
96
- :- Need (decrypted.parsedHeader.Some?, E("Decrypted query result has no parsed header."));
94
+
95
+ // No parsed header is ok, because it means ALLOW_PLAINTEXT_READ and a plain text item
96
+ if keyId. KeyId? && decrypted. parsedHeader. Some? {
97
97
:- Need (|decrypted.parsedHeader.value.encryptedDataKeys| == 1, E("Query result has more than one Encrypted Data Key"));
98
98
if decrypted. parsedHeader. value. encryptedDataKeys[0]. keyProviderInfo == keyIdUtf8 {
99
99
decryptedItems := decryptedItems + [decrypted. plaintextItem];
Original file line number Diff line number Diff line change @@ -88,9 +88,10 @@ module ScanTransform {
88
88
89
89
var decryptInput := EncTypes. DecryptItemInput (encryptedItem := encryptedItems[x]);
90
90
var decryptRes := tableConfig. itemEncryptor. DecryptItem (decryptInput);
91
-
92
91
var decrypted :- MapError (decryptRes);
93
- if keyId. KeyId? {
92
+
93
+ // No parsed header is ok, because it means ALLOW_PLAINTEXT_READ and a plain text item
94
+ if keyId. KeyId? && decrypted. parsedHeader. Some? {
94
95
:- Need (decrypted.parsedHeader.Some?, E("Decrypted scan result has no parsed header."));
95
96
:- Need (|decrypted.parsedHeader.value.encryptedDataKeys| == 1, E("Scan result has more than one Encrypted Data Key"));
96
97
if decrypted. parsedHeader. value. encryptedDataKeys[0]. keyProviderInfo == keyIdUtf8 {
You can’t perform that action at this time.
0 commit comments