对云原生应用程序中的敏感数据进行分类
在云原生应用程序中实现合规性的第一步是对数据进行分类。 数据分类是按照敏感度来识别应用程序使用的数据的过程。 数据分类是通过为每个数据类型分配标签来实现的。 例如,可以将用户的名称标记为“敏感”,将用户的年龄标记为“不敏感”。
在本单元中,你将了解 .NET 的一些合规性功能。 然后,你将了解如何对云原生应用程序中的数据进行分类。
什么是合规性?
组织需要遵守自己内部的策略和外部的法规。 例如,公司可能有一个策略要求客户数据不能存储在日志文件中。 或者,政府可能制定法规来强制对客户数据进行适当的处理。 这些策略和法规通常称为“合规性要求”。
合规性要求是通过创建一组应用于组织应用程序的规则来实现的。 通常,合规性团队负责实施合规性规则,然后确保遵守这些规则。
什么是数据分类?
数据分类是网络安全和信息治理中使用的术语。 数据分类描述了根据内容的敏感度或影响级别对其进行识别、分类和保护的过程。 数据分类可根据数据的敏感程度或影响级别保护组织数据免受未经授权的泄露、更改或破坏。
贵公司决定实施数据分类策略。 此策略将数据分为两个分类:
- 最终用户身份信息 (EUII) - 可用于识别个人的信息。 例如,用户名、地址或电话号码。
- 最终用户假名标识符 (EUPI) - 可用于识别个人的信息,但前提是数据与其他信息组合在一起。 例如,用户在数据库中的数据的 ID 或用户的 IP 地址。
如何对云原生应用程序中的数据进行分类
Microsoft 向 .NET 添加了一个新的扩展,用于简化数据分类的实施。 Microsoft.Extensions.Compliance.Classification
扩展使你能够定义 DataClassification
和 DataClassificationAttribute
属性。
若要在解决方案中使用该扩展,请将 Microsoft.Extensions.Compliance.Redaction
NuGet 包添加到项目。
例如,创建上述分类的代码可能如下所示:
using Microsoft.Extensions.Compliance.DataClassification;
public static DataClassification EUIIDataClassification {get;} = new DataClassification("EUIIDataTaxonomy", "EUIIData");
public static DataClassification EUPDataClassification {get;} = new DataClassification("EUPDataTaxonomy", "EUPData");
public class EUIIDataAttribute : DataClassificationAttribute
{
public EUIIDataAttribute() : base(DataClassifications.EUIIDataClassification) { }
}
public class EUPDataAttribute : DataClassificationAttribute
{
public EUPDataAttribute() : base(DataClassifications.EUPDataClassification) { }
}
定义分类后,你便可以使用相应的属性对数据类型进行注释。 例如:
public class User
{
[EUIIData]
public string Name { get; set; }
[EUIIData]
public string Address { get; set; }
[EUPData]
public string UserId { get; set; }
}
让我们了解如何在示例云原生应用程序中实施数据分类。