开发者社区 > 大数据与机器学习 > 大数据计算 MaxCompute > 正文

大数据计算MaxCompute 对id_card_no加密,这个加密方法在dataworks能用吗?

大数据计算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能用吗,怎么识别不了关键字。 哪位老师清楚?531548d2968ee8adafc294ff8610b7f9.png

展开
收起
cuicuicuic 2023-12-19 06:58:55 29 0
2 条回答
写回答
取消 提交回答
  • 在SQL语句前加上语句set odps.sql.type.system.odps2=true;,并与SQL语句一起提交执行。

    试一下 ,此回答整理自钉群“MaxCompute开发者社区2群”

    2023-12-19 17:07:53
    赞同 展开评论 打赏
  • 您好,MaxCompute确实支持对id_card_no进行加密和解密操作。在您的示例中,使用了sym_encrypt函数进行AES-GCM-256加密,并使用base64函数将加密后的结果转换为字符串格式 。

    要在DataWorks中使用这种加密方法,您可以按照以下步骤进行操作:

    1. 打开DataWorks控制台,并导航到相应的项目空间。
    2. 在项目空间中,找到您要使用的数据集成任务,或者创建一个新的数据集成任务。
    3. 在数据集成任务的编辑界面中,配置源数据为MaxCompute中的表或视图。
    4. 在数据集成任务的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;
    
    1. 执行数据集成任务,将加密后的数据插入到目标表中。
    2. 如果需要查询解密后的明文数据,可以使用以下SELECT语句:
    select * from mf_user_info;
    

    请注意,确保您已经在DataWorks中配置了MaxCompute的相关连接信息和权限。同时,为了保护敏感数据的安全性,建议使用KMS托管密钥进行加密和解密操作。

    2023-12-19 09:05:23
    赞同 展开评论 打赏

MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。

相关产品

  • 云原生大数据计算服务 MaxCompute
  • 相关电子书

    更多
    大数据AI一体化的解读 立即下载
    极氪大数据 Serverless 应用实践 立即下载
    大数据&AI实战派 第2期 立即下载