Implementation of data classification and redaction designed for testing.
Get Started
| Product | Versions |
|---|---|
| .NET | |
| Other |
README
Microsoft.Extensions.Compliance.Testing
This package provides test fakes for testing data classification and redaction.
Install the package
From the command-line:
dotnet add package Microsoft.Extensions.Compliance.Testing
Or directly in the C# project file:
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Compliance.Testing" Version="[CURRENTVERSION]" />
</ItemGroup>
Usage
Fake Redactor
The FakeRedactor class provides options and services to verify redaction events.
The fake redactor services can be registered using one of the AddFakeRedaction overloads:
public static IServiceCollection AddFakeRedaction(this IServiceCollection services)
public static IServiceCollection AddFakeRedaction(this IServiceCollection services, Action<FakeRedactorOptions> configure)
For example:
IServiceCollection services = new ServiceCollection();
services = services.AddFakeRedaction(options => options.RedactionFormat = "Redacted: {0}");
It also registers an instance of Microsoft.Extensions.Compliance.Testing.FakeRedactionCollector which can be used to inspect what was redacted.
For example:
var serviceProvider = services.BuildServiceProvider();
var collector = serviceProvider.GetRequiredService<FakeRedactionCollector>();
Console.WriteLine(collector.AllRedactorRequests.Count);
Fake Taxonomy
The Microsoft.Extensions.Compliance.Testing.FakeTaxonomy taxonomy class contains simple data classification values to use while testing redaction.
It consists of these data classification properties:
FakeTaxonomy.PublicDataFakeTaxonomy.PrivateData
These properties have their corresponding data classification attributes that can be used on method arguments and properties when features require it:
[PublicData]usually represents some data that should not be redacted.[PrivateData]usually extensions to setup that should be redacted.
Example:
var redactionProvider = serviceProvider.GetFakeRedactionCollector();
var redactor = redactionProvider.GetRedactor(FakeTaxonomy.PublicData);
Console.WriteLine(redactor.Redact("Hello")); // "Redacted: Hello"
Feedback & Contributing
We welcome feedback and contributions in our GitHub repo.
Downloads by Version
Similar & Alternative Packages
Hand-picked matching NuGet libraries based on tags & ecosystem
Depended On By
Find packages that declare this package as a dependency. NuGet does not provide a reverse-dependency endpoint, so candidates are checked on demand.
Adoption Assessment
A verified publisher signal is available. Assess fit from the package's supported frameworks, license and dependency graph rather than popularity alone.
Related Guides & Workflows
Learn how to evaluate, integrate, or audit this package in your .NET project.