-
Notifications
You must be signed in to change notification settings - Fork 494
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Client Encryption: Fixes System.Text custom serializer issue with DataEncryptionKeyContainer operations. #3386
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
kr-santosh
requested review from
kirankumarkolli,
ealsur,
FabianMeiswinkel,
kirillg and
sboshra
as code owners
August 16, 2022 06:10
kr-santosh
changed the title
Client Encryption: Fixes custom serializer issue with DataEncryptionKeyContainer operations.
Client Encryption: Fixes Sysytem.Text custom serializer issue with DataEncryptionKeyContainer operations.
Aug 16, 2022
kr-santosh
changed the title
Client Encryption: Fixes Sysytem.Text custom serializer issue with DataEncryptionKeyContainer operations.
Client Encryption: Fixes System.Text custom serializer issue with DataEncryptionKeyContainer operations.
Aug 18, 2022
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyContainerCore.cs
Outdated
Show resolved
Hide resolved
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyContainerCore.cs
Outdated
Show resolved
Hide resolved
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyContainerCore.cs
Outdated
Show resolved
Hide resolved
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyContainerCore.cs
Outdated
Show resolved
Hide resolved
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyFeedIterator.cs
Outdated
Show resolved
Hide resolved
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyFeedIterator{T}.cs
Outdated
Show resolved
Hide resolved
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyFeedIterator.cs
Outdated
Show resolved
Hide resolved
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyFeedIterator.cs
Outdated
Show resolved
Hide resolved
abhijitpai
requested changes
Aug 18, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🕐
ealsur
previously approved these changes
Aug 18, 2022
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyContainerCore.cs
Outdated
Show resolved
Hide resolved
abhijitpai
reviewed
Aug 18, 2022
Microsoft.Azure.Cosmos.Encryption.Custom/src/DataEncryptionKeyFeedIterator.cs
Outdated
Show resolved
Hide resolved
abhijitpai
previously approved these changes
Aug 18, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
abhijitpai
approved these changes
Aug 19, 2022
/azp run |
ealsur
approved these changes
Aug 19, 2022
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
DataEncryptionProperties which is the core class for encryption keys in custom model is based on NewtonSoft JSON serialization and uses NewtonSoft property attribute to serialize certain members in the class which is not compatible with System.Text JSON serialization. Hence when a client is configured with custom serializer using System.Text and the same client is used for creating keys using DataEncryptiuonKeyContainer operations like CreateDataEncryptionKeyAsync it fails.
So, the idea is to use stream APIs to create client encryption key items using internal Cosmos JSON serializer to store and retrieve the data encryption keys.
Type of change