大数据计算MaxCompute 对id_card_no加密
insert overwrite table mf_user_info
select id,
name,
gender,
base64(sym_encrypt(id_card_no,
cast(‘b75585cf321cdcad42451690cdb7bfc4’ as binary),
‘AES-GCM-256’,
‘test’
))as id_card_no,
tel
from mf_user_info;
select * from mf_user_info; 这个加密方法在dataworks能用吗,怎么识别不了关键字。 哪位老师清楚?
以下为热心网友提供的参考意见
在SQL语句前加上语句set odps.sql.type.system.odps2=true;,并与SQL语句一起提交执行。
试一下 ,此回答整理自钉群“MaxCompute开发者社区2群”
以下为热心网友提供的参考意见
您好,MaxCompute确实支持对id_card_no进行加密和解密操作。在您的示例中,使用了sym_encrypt
函数进行AES-GCM-256加密,并使用base64
函数将加密后的结果转换为字符串格式 。
要在DataWorks中使用这种加密方法,您可以按照以下步骤进行操作:
- 打开DataWorks控制台,并导航到相应的项目空间。
- 在项目空间中,找到您要使用的数据集成任务,或者创建一个新的数据集成任务。
- 在数据集成任务的编辑界面中,配置源数据为MaxCompute中的表或视图。
- 在数据集成任务的SQL编辑器中,编写您的SELECT语句,包括对id_card_no列的加密操作。例如:
insert overwrite table mf_user_info
select id,
name,
gender,
base64(sym_encrypt(id_card_no,
cast('b75585cf321cdcad42451690cdb7bfc4' as binary),
'AES-GCM-256',
'test'))as id_card_no,
tel
from mf_user_info;
- 执行数据集成任务,将加密后的数据插入到目标表中。
- 如果需要查询解密后的明文数据,可以使用以下SELECT语句:
select * from mf_user_info;
请注意,确保您已经在DataWorks中配置了MaxCompute的相关连接信息和权限。同时,为了保护敏感数据的安全性,建议使用KMS托管密钥进行加密和解密操作。
本文来自投稿,不代表新手站长_郑州云淘科技有限公司立场,如若转载,请注明出处:https://www.cnzhanzhang.com/11333.html