BeyondAuth.RelatedDataValidation
1.4.0
dotnet add package BeyondAuth.RelatedDataValidation --version 1.4.0
NuGet\Install-Package BeyondAuth.RelatedDataValidation -Version 1.4.0
<PackageReference Include="BeyondAuth.RelatedDataValidation" Version="1.4.0" />
paket add BeyondAuth.RelatedDataValidation --version 1.4.0
#r "nuget: BeyondAuth.RelatedDataValidation, 1.4.0"
// Install BeyondAuth.RelatedDataValidation as a Cake Addin #addin nuget:?package=BeyondAuth.RelatedDataValidation&version=1.4.0 // Install BeyondAuth.RelatedDataValidation as a Cake Tool #tool nuget:?package=BeyondAuth.RelatedDataValidation&version=1.4.0
Related Data Authorization Handler
This is meant to solve problems around protecting data linked by indirect relationships.
Prevent accidentally delivering a derived file to the wrong client
Let's say we have several systems involved in the ingesting, processing and delivery of work based on a file (or resource) provided to you by Client A, and part of this involves some steps in the workflow that are performed by separate systems which don't necessarily directly pass data among themselves.
Example scenario
- File1 is submitted by the client BankOne to System A
- System A computes a SHA-256 hash of the file's contents and sends the hash and client name to the Related Data Authorization component
- Alice goes into System A and downloads the file and uploads it to internal processing System B
- System B generates derivative file File2
- System B computes SHA-256 hashed of the both the input and output files at any step that generates a file, and sends the new file's hash and any potentially useful additional information to the Related Data Authorization component, with the input file's hash in the 'rel' property
- Susan downloads File2 and tries to upload it in System A and deliver it to client FintechX
- System A computes a SHA-256 hash of the uploaded file and submits it to the Related Data Authorization component along with the client's name
- Validation rule fails and accidental delivery is prevented
Register services
services.AddSingleton<IAuthorizationHandler, RelatedDataAuthorizationHandler>();
services.AddSingleton<IRelatedDataAuthorizationService, RelatedDataAuthorizationService>();
Execute index
new Index_RelatedDataAgg().Execute(_store);
Usage
Todo
What should happen if ClientB uploads the same file as ClientA completely independent of each other
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Microsoft.AspNetCore.Authorization (>= 8.0.8)
- Microsoft.AspNetCore.Http.Abstractions (>= 2.2.0)
- Microsoft.AspNetCore.Http.Features (>= 5.0.17)
- Microsoft.Extensions.Http (>= 8.0.0)
- RavenDB.Client (>= 6.0.105)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.4.0 | 84 | 9/24/2024 |
1.3.0 | 116 | 9/17/2024 |
1.2.7 | 78 | 8/8/2024 |
1.2.6 | 93 | 8/6/2024 |
1.2.5 | 80 | 8/5/2024 |
1.2.4 | 67 | 7/30/2024 |
1.2.3 | 74 | 7/24/2024 |
1.2.2 | 82 | 7/23/2024 |
1.2.1 | 90 | 7/22/2024 |
1.2.0 | 90 | 7/18/2024 |
1.1.11 | 75 | 7/15/2024 |
1.1.10 | 88 | 7/14/2024 |
1.1.9 | 90 | 7/14/2024 |
1.1.8 | 90 | 7/14/2024 |
1.1.7 | 67 | 7/14/2024 |
1.1.6 | 80 | 7/14/2024 |
1.1.5 | 81 | 7/13/2024 |
1.1.4 | 81 | 7/13/2024 |
1.1.3 | 88 | 7/13/2024 |
1.1.2 | 73 | 7/13/2024 |
1.1.1 | 81 | 7/13/2024 |
1.1.0 | 66 | 7/12/2024 |
1.0.12 | 80 | 7/11/2024 |
1.0.11 | 64 | 7/11/2024 |
1.0.10 | 91 | 7/10/2024 |
1.0.9 | 102 | 6/13/2024 |
1.0.8 | 99 | 6/13/2024 |
1.0.7 | 98 | 6/13/2024 |