问题标签 [data-masking]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - SQL Server 数据屏蔽 屏蔽所需的最低权限
我正在屏蔽 SQL Server 2017 数据库中的一些数据。我用这个语句掩盖了一个列:
我可以看到sys.columns
这现在被掩盖了。
现在在应用程序中,数据没有显示为被屏蔽(以该用户身份登录时,数据也没有显示在数据库中)。我还运行了以下命令以确保用户没有此权限。
任何人都可以建议需要什么最低权限,以便数据屏蔽按预期工作。
先感谢您
elasticsearch - elasticsearch中的数据屏蔽
我想知道有什么方法可以通过 elasticsearch inbuild 功能实现以下用例。
我在弹性搜索搜索中索引了员工数据
EMP ID FNAME LNAME COUNTRY 组织 Other 50 与 Employee 相关的属性
1 Jayesh Bhoyar 美国 ABC
2 Tapan pal 美国 ABC
3 Ajay 美国 ABC
4 Ravi Verma 韩国 ABC
7 Pankaj Pal 韩国 ABC
5 Sundar Lal 日本 ABC
6 rahul Sri 日本 ABC
现在我们有 4 个用户及其访问级别:
User1 - 可以访问美国
User2 - 可以访问美国、日本
User3 - 可以访问美国、韩国
User4 - 可以访问美国、日本、韩国
用户 1
现在,当用户 1 搜索 ABC 时,他应该得到 7 个结果,但输出应该如下:
EMP ID FNAME LNAME COUNTRY 组织 Other 50 与 Employee 相关的属性
1 Jayesh Bhoyar 美国 ABC
2 Tapan pal 美国 ABC
3 Ajay 美国 ABC
XXX XXX XXX 韩国 XXX XXXXXXXXX
XXX XXX XXX 韩国 XXX XXXXXXXXX
XXX XXX XXX 日本 XXX XXXXXXXXX
XXX XXX XXX 日本 XXX XXXXXXXXX
用户 2
现在,当用户 2 搜索 ABC 时,他应该得到 7 个结果,但输出应该如下:
他应该能看到日本的结果,韩国的结果应该被掩盖
EMP ID FNAME LNAME COUNTRY 组织 Other 50 与 Employee 相关的属性
1 Jayesh Bhoyar 美国 ABC
2 Tapan pal 美国 ABC
3 Ajay 美国 ABC
XXX XXX XXX 韩国 XXX XXXXXXXXX
XXX XXX XXX 韩国 XXX XXXXXXXXX
5 Sundar Lal 日本 ABC
6 rahul Sri 日本 ABC
用户 3
现在,当用户 3 搜索 ABC 时,他应该得到 7 个结果,但输出应该如下:
他应该能看到韩国的结果,日本的结果应该被掩盖
EMP ID FNAME LNAME COUNTRY 组织 Other 50 与 Employee 相关的属性
1 Jayesh Bhoyar 美国 ABC
2 Tapan pal 美国 ABC
3 Ajay 美国 ABC
4 Ravi Verma 韩国 ABC
7 Pankaj Pal 韩国 ABC
XXX XXX XXX 日本 XXX XXXXXXXXX
XXX XXX XXX 日本 XXX XXXXXXXXX
有什么方法可以通过脚本或跨度或弹性搜索中内置的其他东西来实现
r - 数据框中的数据屏蔽
我有一个具有 8 个唯一值的数据框
/li>我创建了另一个数据框,其中包含 8 个唯一值,这些值将用作替换
/li>我想用以下方式替换所有
data dataframe
唯一replacement dataframe
值
所有 ab 值由 SJ 替换
所有 cc 值由 fH 替换
所有 dd 值由 TZ 替换
所有 ee 值由 Mr 替换
所有 ff 值由 oZ 替换
所有 gg 值由 kZ 替换
所有 1 值由 fe 替换
所有 air 值由 ql 替换
目前,我通过以下方式实现这一目标:
/li>R中是否有任何基本功能可以实现?有没有比这更好的方法来屏蔽数据?
regex - 用于数据屏蔽的 Javascript 正则表达式
我一直在试图弄清楚如何专门掩盖字符串的某些部分。
例如,如果我要屏蔽电子邮件中的前四个字母:
和
在电话号码的最后四个数字之前屏蔽四个数字:
这些正则表达式中的每一个都将使用替换什么?
java - 在记录之前屏蔽敏感数据 - log4j
出于记录目的,我一直在从事的项目中使用了toString()
杰克逊的方法,而不是使用方法。writeValueAsString(object)
现在,我需要在日志中屏蔽密码和信用卡号等敏感信息。如果toString()
正在使用,我可以从toString()
方法中删除那些敏感数据。但就我而言,我找不到这样简单而正确的方法来解决我的问题。我无法改变整个使用的东西toString()
。
我读到,通过使用%replace
方法,我可以使用预定义的模式替换不需要登录的数据。但是所有需要屏蔽的敏感数据都不会遵循单一模式。
我尝试通过拦截日志事件,查找特定信息并屏蔽它们(使用实现的类LogEventFactory
)。尽管它是一个可行的解决方案,但我认为这不是一个好的解决方案,因为每次都在大字符串中查找数据是有代价的。
有没有什么我还没有遇到的方法来解决我的问题?方法%replace
是要走的路吗?如果是这样,怎么做?
asp.net - 动态数据掩码停止工作
我有一个测试网页,它使用受限 SQL 用户来查询 Azure SQL DB 以从屏蔽字段中获取数据。它返回数据并被屏蔽。我欣喜若狂。我用一个按钮改变了用户,瞧!我可以看到实际数据。
然后今天,由于某种原因,它停止工作,我哭了。
我之间没有更改任何代码。但是,我确实使用 Azure 门户打开了审核(无法想象会影响它)。我认为 TDE 可能与 DDM 冲突,但我在其他地方读到它没有 - 加上它在工作时已经启用。我运行了一个查询来显示我的“nobody”SQL 用户拥有哪些权限——仅限“连接”。
所以我删除了我的“nobody”用户并创建了一个新的 SQL 登录名和关联用户(而不仅仅是一个用户)。这样,我可以使用 SSMS 以受屏蔽影响的受限用户身份登录 - 但不是。
所以我可以在 TSQL 中或通过 Azure 设置掩码,Azure 会显示哪些字段受到了影响。但是我每次在 SSMS 或通过 .net 中运行查询时都会看到未屏蔽的数据。
我真的很难过,所以任何帮助都会很棒。
在某些情况下,掩蔽会停止工作吗?还有什么我可以检查以确保其设置正确吗?
非常多
html - 如何在不降低网站安全性的情况下显示正确长度的屏蔽密码?
我的 Web 应用程序包含一个配置文件编辑页面,用户可以在其中更改他们的电子邮件地址、密码等。密码字段是 HTML“密码”类型,因此它会自动用项目符号字符掩盖其内容。密码作为哈希值保存在数据库中,所以我没有将实际密码加载到字段中,我只是加载字符串“********”,它显示为八个项目符号。然后当表单提交时,我检查提交的值,如果它不是“********”,则保存新密码。
问题是用户经常发送帮助票说他们的密码没有正确保存,因为他们输入了 6 或 10 或任何长度的密码,但当他们返回配置文件编辑页面时出现 8 个点。所以该网站的行为符合预期,但我已经厌倦了向用户解释这一点,并试图考虑如何在该字段中显示准确的点数。
我唯一能想到的就是在我保存密码时将密码长度与散列密码一起保存,然后使用该长度来显示正确的点数。但这会不太安全,因为它会向黑客显示每个密码的长度。
另一种选择是将密码字段加载为空,希望用户不会因此而感到困惑。或者我可以将此选项显示为“更改密码”表单,以表明该表单未尝试加载保存的密码。
但首先我想知道是否有一个技巧可以准确地显示这些点?
sql - 更新查询具有动态数据掩码的字段
我有这种情况:
- SQL Server 2016 中的表在一列上配置了动态数据掩码。
- 我将一整行读入前端并显示值,包括返回值“xxxx”的屏蔽字段
- 为了更新表,应用程序从用户前端读取值并生成一个 UPDATE SQL 语句,其中包括屏蔽字段的“xxxx”值。
- SQL Server 2016 用值“xxxx”覆盖掩码字段的现有值。
有没有办法配置 SQL Server 2016 以了解值“xxxx”是它刚刚发送的屏蔽值,而不是覆盖屏蔽数据?
java - 用于屏蔽 xml 标记内容中除最后 4 位以外的数字的字符串的正则表达式
这是一个帐号 77787845456464645656547877
accountNumber1.replaceAll( "(desc>||desc\s*[:]{2}\s*?|)(\d(?=\d{4}))", "$1XXXXXXXXXX$2") 这不是工作,我尝试了不同的方法没有结果。请检查,谢谢