使用OmniShield机密大数据特性执行Spark引擎业务,需通过启动Spark提交任务执行。
1 | hadoop key create key3 -cipher 'SM4/GCM/NoPadding' |
1 | spark-sql --master local --conf spark.sql.extensions=com.huawei.analytics.shield.sql.DataSourceEncryptPlugin --conf spark.hadoop.io.compression.codecs=com.huawei.analytics.shield.crypto.CryptoCodec --conf spark.sql.orc.filterPushdown=false --jars omnishield-1.0-SNAPSHOT.jar,kms.jar --conf spark.executor.extraClassPath=omnishield-1.0-SNAPSHOT.jar:kms.jar --driver-class-path omnishield-1.0-SNAPSHOT.jar:kms.jar |
1 2 | drop table if exists otest1; create table otest1 (name string) options ( hadoop.security.key.provider.path "kms://http@IP:PORT/kms", orc.key.provider "hadoop", orc.encrypt "key3:name") stored as orc; |
1 | describe extended otest1; |
在SQL运行结果的Storage Properties中如果包含orc.encrypt项则为加密表。