SELECT mask('13012345678', '*', 3, 4) AS result FROM system.dual LIMIT 1;
复制
Inceptor 提供多种脱敏函数,可用于列级权限控制场景,帮助您更好地管控信息安全。
mask
函数语法 | 返回类型 | 描述 |
---|---|---|
mask(expr [, mask_str], pre_len[, post_len]) |
STRING |
使用脱敏字符来替代原文内容,可指定原文要保留的前后长度。可用于隐藏电话号码、身份证等场景。 |
参数说明:
-
expr:指定要脱敏的表达式。
-
mask_str(可选):指定用来替换的字符串,默认通过星号(
*
)来实现脱敏效果。 -
pre_len:原字符串要保留的头部长度(正整数)。
-
post_len(可选):原字符串要保留的尾部长度(正整数),默认为 0。
|
使用示例:
返回示例:
+--------------+ | result | +--------------+ | 130****5678 | +--------------+
复制
mask_email
函数语法 | 返回类型 | 描述 |
---|---|---|
mask_email(expr [, mask_str, pre_len, post_len]) |
STRING |
使用脱敏字符来替代邮箱地址 |
参数说明:
-
expr:指定要脱敏的表达式。
-
mask_str(可选):指定用来替换的字符串,默认通过星号(
*
)来实现脱敏效果。 -
pre_len(可选):原字符串要保留的头部长度(正整数),默认为 1。
-
post_len(可选):原字符串要保留的尾部长度(正整数),默认为 0。
|
使用示例:
SELECT mask_email('address@transwarop.io', '*', 2, 1) AS result FROM system.dual LIMIT 1;
复制
返回示例:
+------------------------+ | result | +------------------------+ | ad****s@transwarop.io | +------------------------+
复制
mask_company
函数语法 | 返回类型 | 描述 |
---|---|---|
mask_company(expr[, mask_str]) |
STRING |
使用脱敏字符来替代原文内容,只保留“有限公司”及其之后的字符,可用于隐藏公司名称的场景。 |
参数说明:
-
expr:指定要脱敏的表达式。
-
mask_str(可选):指定用来替换的字符串,默认通过星号(
*
)来实现脱敏效果。
|
使用示例:
SELECT mask_company('测试有限公司') AS result FROM system.dual LIMIT 1;
复制
返回示例:
+-------------+ | result | +-------------+ | ****有限公司 | +-------------+
复制
caesar_cipher
函数语法 | 返回类型 | 描述 |
---|---|---|
caesar_cipher(expr[, shift_val]) |
STRING |
通过 Caesar cipher 方法加密表达式中的数字和英文字母,即通过制定偏移量来实现加密,例如偏移量为 1,会将 11aa 转换为 22bb。 |
参数说明:
-
expr:指定要加密的表达式。
-
shift_val:指定加密所使用的偏移量,默认为 3。
使用示例:
SELECT caesar_cipher('012hello测试') AS result FROM system.dual LIMIT 1;
复制
返回示例:
+--------------+ | result | +--------------+ | 345khoor测试 | +--------------+
复制