* Added documentation detailing how serialization works using the DataContract serialization framework. (#1222)
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
* Weakly typed actor polymorphic and null responses (#1214)
Signed-off-by: Remco Blok <remco.blok@resilientenergy.com>
Co-authored-by: Remco Blok <remco.blok@resilientenergy.com>
Co-authored-by: Phillip Hoff <phillip@orst.edu>
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
* Enable vault name mapping and error suppression
Signed-off-by: Yash Nisar <yashnisar@microsoft.com>
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
* Add additional secret descriptor constructor for required without key map
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
* Update configuration load exception rethrow to match rules
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
* Add tests for required/not required exception handling
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
* Implementing Cryptography building block in .NET (#1217)
* Added method to DaprClient and GRPC implementation to call cryptography proto endpoints
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* First pass at implementing all exposed Cryptography methods on Go interface
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Added examples for Cryptography block
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Added missing copyright statements
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated to properly support Crypto API this time
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Added copyright statements
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Removed deprecated examples as the subtle APIs are presently disabled
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated example to reflect new API shape
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated example and readme
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Added overloads for encrypting/decrypting streams instead of just fixed byte arrays. Added example demonstrating the same encrypting a file via a FileStream and decrypting from a MemoryStream.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Added some unit tests to pair with the implementation
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Added null check for the stream argument
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Changed case of the arguments as they should read "plaintext" and not "plainText"
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Reduced number of encryption implementations by just wrapping byte array into memory stream
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Constrainted returned member types per review suggestion
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated methods to use ReadOnlyMemory<byte> instead of byte[] - updated implementations to use low-allocation spans where possible (though ToArray is necessary to wrap with MemoryStream).
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated to use encryption/decryption options instead of lots of method overload variations. Simplified gRPC implementation to use fewer methods. Applied argument name updates applied previously (plainText -> plaintext).
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated tests
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Removed unused reference
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated examples to reflect new method shapes. Downgraded package to .net 6 instead of .net 8 per review suggestion.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated to reflect non-aliased values per review suggestion
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Update to ensure that both send/receive streams run at the same time instead of sequentially.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated to support streamed results in addition to fixed byte arrays. Refactored implementation to minimize duplicative code.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated example to fix compile issue
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Removed encrypt/decrypt methods that accepted streams and returned ReadOnlyMemory<byte>. Marked implementations that use this on the gRPC class as private instead.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Added missing Obsolete attributes on Encrypt/Decrypt methods. Added overloads on decrypt methods that do not require a DecryptionOptions to be passed in.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated encrypt/decrypt options so the streaming block size no longer uses a uint. Added validation in its place to ensure the value provided is never less than or equal to 0.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated how validation works in the options to accommodate lack of the shorter variation in .NET 6
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated names of encrypt/decrypt streaming methods so everything uses just EncryptAsync or DecryptAsync
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Fixed regression that would have prevented data from being sent entirely to the sidecar. Also simplified operation per suggestion in review.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated examples to reflect changed API
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated so IAsyncEnumerable methods (encrypt and decrypt) return IAsyncEnumerable<ReadOnlyMemory<byte>> instead of IAsyncEnumerable<byte[]>.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated example to reflect change from IAsyncEnumerable<byte> to IAsyncEnumerable<ReadOnlyMemory<byte>>
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Avoiding allocation by using MemoryMarshal instead of .ToArray() to create MemoryStream from ReadOnlyMemory<byte>.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Performance updates to minimize unnecessary byte array copies and eliminate unnecessary allocations.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Removed unnecessary return from SendPlaintextStreamAsync and SendCiphertextStreamAsync methods
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated exception text to be more specific as to what's wrong with the input value.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Minor tweak to prefer using using a Memory
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Deduplicated some of the Decrypt methods, simplifying the implementation
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Eliminated duplicate encryption method, simplifying implementation
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated to eliminate an unnecessary `await` and `async foreach`.
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Updated stream example to reflect the changes to the API shape
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
* Added notes about operations with stream-based data
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
---------
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
* Update DaprSecretDescriptor constructors and documentation
Signed-off-by: James Croft
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
* Remove DaprSecretStoreConfigurationProvider Console.WriteLine
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
---------
Signed-off-by: Whit Waldo <whit.waldo@innovian.net>
Signed-off-by: James Croft <jamz_c@hotmail.co.uk>
Signed-off-by: Remco Blok <remco.blok@resilientenergy.com>
Signed-off-by: Yash Nisar <yashnisar@microsoft.com>
Signed-off-by: James Croft
Co-authored-by: Whit Waldo <whit.waldo@innovian.net>
Co-authored-by: Remco Blok <remcoblok@hotmail.com>
Co-authored-by: Remco Blok <remco.blok@resilientenergy.com>
Co-authored-by: Phillip Hoff <phillip@orst.edu>
Co-authored-by: Yash Nisar <yashnisar@microsoft.com>
The secret store configuration provider was trying to access Dapr
during the app startup. If the app started faster than Dapr, it would
get an error trying to access the secrets. This commit lets the
provider wait for the sidecar to come up before making any requests.
If the sidecar does not come up at all, we will still fail.
https://github.com/dapr/dotnet-sdk/issues/779
Signed-off-by: Hal Spang <halspang@microsoft.com>
* Fix DaprSecretStoreConfigurationProvider
* Add comment for `SendBulkResponseWithSecrets`.
Co-authored-by: Your Name <you@example.com>
Co-authored-by: Ryan Nowak <nowakra@gmail.com>
* Added support for custom delimiters in secret keys.
* Removed hard-coded double underscore delimiter.
* Updated the KeyDelimiters property to use IList.
* Reverted the AddDaprSecretStore keyDelimiters parameter to IEnumerable.
* Fix for build failure due to dumb save issue.
* NormalizeKey Secret Store configuration key.
* Add test.
* Add option to disable NormalizeKey.
Co-authored-by: Your Name <you@example.com>
Co-authored-by: Ryan Nowak <nowakra@gmail.com>
This change introduces a better API for us to test the DaprClient or
other HttpClient based APIs.
This will resolve the flakiness problems that we're seeing with some of
the actors tests.
Fixes: #573Fixes: #588
Additionally fixed an issue where DaprHttpInteractor was misuing
HttpClientHandler. This would result in a new handler being created when
it isn't needed.
* Remove secret store extension from building
* Remove code
Co-authored-by: LM <lemai>
Co-authored-by: Aman Bhardwaj <amanbha@users.noreply.github.com>
* Move to new invoke proto, specify contenttype in response to the dapr/config message, clarify sample
* Update for additional proto changes
* cr
Co-authored-by: LM <lemai>