如何将修改后的掩码值与原始值而不是掩码值一起保存到Azure SQL数据库中?

普拉迪普

我使用下面的链接在当前项目中实现了动态数据屏蔽概念。

https://docs.microsoft.com/zh-cn/azure/sql-database/sql-database-dynamic-data-masking-get-started

我为SSN字段添加了掩码,之后,我只能看到XXXX-XX-0001之类的SSN的掩码数据。但是,每当修改SSN字段(XXXX-XX-0002)并将其保存到Azure SQL数据库中时,被屏蔽的数据将不会保存为原始SSN值。

能否请您告诉我如何将具有原始值的更新的掩码值保存到Azure SQL数据库中?

普拉迪普

陈小龙

正如此官方文档中有关DDM的说明:

动态数据屏蔽使客户能够在不影响应用程序层的情况下指定要泄露的敏感数据量,从而防止对敏感数据的未经授权的访问。这是一项基于策略的安全功能,可在指定数据库字段隐藏查询结果集中的敏感数据,而数据库中的数据不会更改。

动态数据屏蔽策略

排除屏蔽的SQL用户-一组SQL用户或AAD身份,它们将在SQL查询结果中获得未屏蔽的数据。请注意,具有管理员特权的用户将始终被屏蔽,并且将看到原始数据而没有任何屏蔽。

动态数据屏蔽的目的是限制敏感数据的暴露,防止不应访问数据的用户查看数据。

根据您的描述,我假设您的SQL用户具有写权限,但没有UNMASK特权。此时,当您将SSN字段更新到Azure SQL数据库时,您的SSN字段将包含静态屏蔽的数据。

要授予查看未屏蔽数据的权限,您可以按以下方式向您的SQL用户授予UNMASK权限:

GRANT UNMASK TO TestUser;  
EXECUTE AS USER = 'TestUser';  
SELECT * FROM Membership;  
REVERT;   

-- Removing the UNMASK permission  
REVOKE UNMASK TO TestUser; 

或者,您可以登录到Azure门户,键入应从屏蔽中排除的SQL用户或AAD身份,如下所示:

总之,由于您正在使用DDM在查询结果中隐藏敏感数据,因此最好不要向用户授予写权限(db_datawriter db角色)。您可以按照本教程中的“最佳做法和常见用例”部分进行操作另外,您可以参考有关配置和自定义SQL Azure动态数据屏蔽的教程

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL从数据库中删除值

来自分类Dev

如何将多个动态文本框值保存到 SQL Server 数据库中

来自分类Dev

如何将值保存到具有相关字段类型的数据库中?

来自分类Dev

如何将字典值保存到 MySQL 数据库 tkinter python 中?

来自分类Dev

如何将两个数组的值一起插入数据库

来自分类Dev

比较从Java和sql数据库中获取的值

来自分类Dev

SQL在数据库中获取通用值

来自分类Dev

SQL数据库中的列值是否被部分删除?

来自分类Dev

比较从Java和sql数据库中获取的值

来自分类Dev

从Java内部的SQL数据库中调用Enum值

来自分类Dev

在SQL数据库中获取每天的最小datetime值

来自分类Dev

显示基于SQL数据库中字段值的按钮

来自分类Dev

使用 PHP 显示 SQL 数据库中的 int 值

来自分类Dev

在列 SQL 数据库中检索重复值

来自分类Dev

Azure SQL数据库中的数据传输

来自分类Dev

将SQL数据库中的数据显示为拓扑

来自分类Dev

将Excel数据导入SQL数据库中?

来自分类Dev

如何使用变量中的数据填充sql数据库?

来自分类Dev

如何从Firebird SQL数据库中删除大数据

来自分类Dev

如何回滚SQL Server数据库中的数据?

来自分类Dev

如何将动态值插入SQL数据库?

来自分类Dev

如何将GridView中的选中行保存到SQL数据库

来自分类Dev

如何在 Azure SQL 数据库中对用户隐藏其他数据库?

来自分类Dev

DateTimePicker 值未保存到 SQL Server 数据库

来自分类Dev

如何将日期保存到 SQL 数据库?

来自分类Dev

如何将列表框值保存到MVC4和EF中的数据库中?

来自分类Dev

如何将列表框值保存到MVC4和EF中的数据库中?

来自分类Dev

单击下载按钮时,如何将 MySQL 数据库中的值保存到 .txt 文件中?

来自分类Dev

还原数据库失败 - ElasticPool 中的 Azure SQL 数据库

Related 相关文章

  1. 1

    SQL从数据库中删除值

  2. 2

    如何将多个动态文本框值保存到 SQL Server 数据库中

  3. 3

    如何将值保存到具有相关字段类型的数据库中?

  4. 4

    如何将字典值保存到 MySQL 数据库 tkinter python 中?

  5. 5

    如何将两个数组的值一起插入数据库

  6. 6

    比较从Java和sql数据库中获取的值

  7. 7

    SQL在数据库中获取通用值

  8. 8

    SQL数据库中的列值是否被部分删除?

  9. 9

    比较从Java和sql数据库中获取的值

  10. 10

    从Java内部的SQL数据库中调用Enum值

  11. 11

    在SQL数据库中获取每天的最小datetime值

  12. 12

    显示基于SQL数据库中字段值的按钮

  13. 13

    使用 PHP 显示 SQL 数据库中的 int 值

  14. 14

    在列 SQL 数据库中检索重复值

  15. 15

    Azure SQL数据库中的数据传输

  16. 16

    将SQL数据库中的数据显示为拓扑

  17. 17

    将Excel数据导入SQL数据库中?

  18. 18

    如何使用变量中的数据填充sql数据库?

  19. 19

    如何从Firebird SQL数据库中删除大数据

  20. 20

    如何回滚SQL Server数据库中的数据?

  21. 21

    如何将动态值插入SQL数据库?

  22. 22

    如何将GridView中的选中行保存到SQL数据库

  23. 23

    如何在 Azure SQL 数据库中对用户隐藏其他数据库?

  24. 24

    DateTimePicker 值未保存到 SQL Server 数据库

  25. 25

    如何将日期保存到 SQL 数据库?

  26. 26

    如何将列表框值保存到MVC4和EF中的数据库中?

  27. 27

    如何将列表框值保存到MVC4和EF中的数据库中?

  28. 28

    单击下载按钮时,如何将 MySQL 数据库中的值保存到 .txt 文件中?

  29. 29

    还原数据库失败 - ElasticPool 中的 Azure SQL 数据库

热门标签

归档