Commit Graph
60 Commits
Author SHA1 Message Date
Stevan Freeborn ab57ac5a13 chore: add appsettings to gitignore 2026-04-06 09:02:52 -05:00
Stevan Freeborn 5134412c9f chore: configure analzyer warnings 2026-04-06 09:02:31 -05:00
Stevan Freeborn f37181bf33 chore: run dotnet format 2026-04-06 09:01:23 -05:00
Stevan Freeborn 0047151222 chore: dotnet format 2026-04-06 09:01:03 -05:00
Stevan Freeborn 30e392020b docs: flush out sample console app 2026-04-02 20:54:28 -05:00
Stevan Freeborn b61454b118 style: format SetAsync call to single line in sample Program 2026-04-02 20:49:28 -05:00
Stevan Freeborn 0eefe1ce6a test: update WithCustomCryptoProvider null test to expect ArgumentNullException 2026-04-02 20:49:25 -05:00
Stevan Freeborn 258c3dfed5 style: use consistent .Invoke style for action invocation 2026-04-02 20:49:23 -05:00
Stevan Freeborn 95e2cf5916 style: remove unnecessary @ prefix from bytes variable 2026-04-02 20:49:20 -05:00
Stevan Freeborn a15e011467 docs: fill in empty XML comment for StorageChanged event 2026-04-02 20:49:17 -05:00
Stevan Freeborn 9faf29a657 docs: fix typo and formatting in ISecureConfigBuilder XML comments 2026-04-02 20:49:14 -05:00
Stevan Freeborn ed2a1f5194 fix: add null guard to WithCustomCryptoProvider in SecureConfigBuilder 2026-04-02 20:49:11 -05:00
Stevan Freeborn 54abcb672d perf: replace static shared lock with per-instance lock and async delay 2026-04-02 20:49:01 -05:00
Stevan Freeborn 04041d0401 docs: document empty/whitespace passthrough behavior in ICryptoProvider 2026-04-02 20:48:58 -05:00
Stevan Freeborn 12672c9b21 fix: correct nameof parameter in SecureConfigProvider null check 2026-04-02 20:48:55 -05:00
Stevan Freeborn a8b2ec0784 tests: add integration tests
- refactored to use temp directory helper class
- consolidated test key generation to helper class
2026-04-02 20:31:06 -05:00
Stevan Freeborn 5568793a8e chore: run dotnet format 2026-04-02 20:03:32 -05:00
Stevan Freeborn af7f53bc37 refactor: make json file storage provider internal 2026-04-02 20:00:16 -05:00
Stevan Freeborn 24f5f11a34 chore: add global.json file and add sample project to solution now that it builds 2026-04-02 19:57:21 -05:00
Stevan Freeborn d9affe2f75 chore: update sample app to show options pattern usage and verify reload of config works 2026-04-02 19:56:35 -05:00
Stevan Freeborn d0cf2224a5 chore: add physical file provider package as dep 2026-04-02 19:56:09 -05:00
Stevan Freeborn 4e8d3b8865 feat: allow secure storage provider to raise event when storage changes and implement physical file provider in json storage provider to detect when changes occur 2026-04-02 19:55:48 -05:00
Stevan Freeborn f1a9596363 feat: add log message for when reload fails 2026-04-02 19:54:59 -05:00
Stevan Freeborn c2d158c872 feat: allow secure config provider to handle reloading config 2026-04-02 19:54:46 -05:00
Stevan Freeborn 3f1131623e refactor: make isecureconfig interface public 2026-04-02 19:54:23 -05:00
Stevan Freeborn ec424749fe tests: fix lsp issues 2026-04-02 16:29:41 -05:00
Stevan Freeborn 7c501fdf55 feat: implement config builder, source, and extensions 2026-04-02 13:52:58 -05:00
Stevan Freeborn ca0a6dda87 fix: use proper error level 2026-04-02 13:52:45 -05:00
Stevan Freeborn 6c00cef1f7 fix: give json storage file default name 2026-04-02 13:52:28 -05:00
Stevan Freeborn f59bbb3cac fix: use internal json context 2026-04-02 13:52:07 -05:00
Stevan Freeborn 344d3239b1 feat: make interfaces public 2026-04-02 13:51:43 -05:00
Stevan Freeborn a819a5ee25 fix: use proper exception type 2026-04-02 13:51:25 -05:00
Stevan Freeborn d6e22f9f24 fix: add preprocessor directives 2026-04-02 13:50:47 -05:00
Stevan Freeborn 33fb8bdf54 chore: dotnet format 2026-04-02 13:49:55 -05:00
Stevan Freeborn e3e9d68853 feat: allow specifying json type info explicity or resolving from registered options instance 2026-04-02 13:48:45 -05:00
Stevan Freeborn 84f7ce43ed chore: update target frameworks 2026-04-02 13:48:17 -05:00
Stevan Freeborn 5ee9c1bf86 chore: whitelist word 2026-04-02 13:48:04 -05:00
Stevan Freeborn 2babe2ce68 refactor: place log messages in same file 2026-04-01 14:46:05 -05:00
Stevan Freeborn 995d61cd10 feat: implement secure config provider with load method 2026-04-01 14:45:53 -05:00
Stevan Freeborn 17314375cb chore: add dependency 2026-04-01 14:42:06 -05:00
Stevan Freeborn 8180d744c4 chore: whitelist word 2026-04-01 14:41:54 -05:00
Stevan Freeborn c4ec57f402 feat: add builder interface 2026-04-01 12:46:36 -05:00
Stevan Freeborn af7ba5feab refactor: extract interface to separate file 2026-04-01 12:46:21 -05:00
Stevan Freeborn f69317efe5 feat: implement static key provider 2026-04-01 12:45:57 -05:00
Stevan Freeborn 25d13bb24b refactor: rename encryption key provider 2026-04-01 12:36:14 -05:00
Stevan Freeborn 0aa480e25e tests: update deps 2026-04-01 12:34:35 -05:00
Stevan Freeborn 923aeb4ec1 feat: implement AEAD encryption using AES api 2026-04-01 09:12:49 -05:00
Stevan Freeborn b843cf9f08 feat: wip on aes crypto provider 2026-03-31 07:15:13 -05:00
Stevan Freeborn 2915c32274 feat: implement machine key provider
- implement logic for hashing machine key
- extracted interfaces
2026-03-31 07:15:03 -05:00
Stevan Freeborn e05e959378 feat: implement secure config and machine id key generator 2026-03-30 08:03:27 -05:00
Stevan Freeborn 43d64a1855 feat: stub out secure config with dependencies 2026-03-29 22:02:07 -05:00
Stevan Freeborn a843976319 refactor: extract interface for storage provider 2026-03-29 22:01:44 -05:00
Stevan Freeborn d57bc9f5ad style: remove whitespace 2026-03-29 21:41:41 -05:00
Stevan Freeborn dbb56a21dd fix: address analyzer warnings
- call configureawait(false) where applicable
- add missing xml comments
2026-03-29 21:41:22 -05:00
Stevan Freeborn c39efb698b chore: add build props 2026-03-29 21:40:39 -05:00
Stevan Freeborn c8dbde8dc8 feat: support concurrency in json file storage provider 2026-03-29 21:25:39 -05:00
Stevan Freeborn 8453381fe0 feat: implement delete async method on json storage provider 2026-03-29 21:14:37 -05:00
Stevan Freeborn a8774aefe6 feat: implement readallasync method 2026-03-29 21:07:48 -05:00
Stevan Freeborn 38daead9b2 feat: implement read and write methods for json file storage provider 2026-03-29 20:46:45 -05:00
Stevan Freeborn b41669cbc6 chore: initial project setup 2026-03-29 17:48:03 -05:00