tursodatabase/libsql

Dynamic data masking

Open

#90 创建于 2022年12月15日

在 GitHub 查看
 (1 评论) (2 反应) (0 负责人)C (490 fork)batch import
enhancementhelp wanted

仓库指标

Star
 (16,744 star)
PR 合并指标
 (平均合并 23小时 19分钟) (30 天内合并 1 个 PR)

描述

SQL Server, for example, has a neat feature, which is useful for data protection:

https://learn.microsoft.com/en-us/sql/relational-databases/security/dynamic-data-masking?view=sql-server-ver16

What you can do is attach a "masking policy" to a column in a table. For example, email addresses (that are personal information) could be masked by having a MASKED WITH augmentation on a SQL table:

CREATE TABLE users(
    email TEXT MASKED WITH (FUNCTION = 'email()') NOT NULL,
);

Queries to the table would mask out the email address with an anonymized "anon@example.com" version, for example. However, users could still see their own email addresses with another SQL extension that SQL Server has:

EXECUTE AS USER = 'penberg';  

Dynamic data masking is particularly useful in scenarios where database is replicated and you want the extra layer of protection while still serving queries. Please note that there's bound to be some overlap with LumoSQL security features here.

贡献者指南