千家信息网

怎么使用MaxCompute Java SDK运行安全相关命令

发表于:2025-02-12 作者:千家信息网编辑
千家信息网最后更新 2025年02月12日,这篇文章将为大家详细讲解有关怎么使用MaxCompute Java SDK运行安全相关命令,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。使用MaxCo
千家信息网最后更新 2025年02月12日怎么使用MaxCompute Java SDK运行安全相关命令

这篇文章将为大家详细讲解有关怎么使用MaxCompute Java SDK运行安全相关命令,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

使用MaxCompute Console的同学,可能都使用过MaxCompute安全相关的命令。官方文档上有详细的MaxCompute 安全指南 ,并给出了安全相关语句汇总 。

简而言之, 权限管理 、 列级别访问控制 、 项目空间安全配置 以及 跨项目空间的资源分享 都属于 MaxCompute 安全命令相关的范畴。

再直白一点,以下列关键字开头的命令,都是MaxCompute安全相关操作命令:

GRANT/REVOKE ...SHOW  GRANTS/ACL/PACKAGE/LABEL/ROLE/PRINCIPALSSHOW  PRIV/PRIVILEGESLIST/ADD/REOVE  USERS/ROLES/TRUSTEDPROJECTSDROP/CREATE   ROLECLEAR EXPIRED  GRANTSDESC/DESCRIBE   ROLE/PACKAGECREATE/DELETE/DROP  PACKAGEADD ... TO  PACKAGEREMOVE ... FROM  PACKAGEALLOW/DISALLOW  PROJECTINSTALL/UNINSTALL  PACKAGELIST/ADD/REMOVE   ACCOUNTPROVIDERSSET  LABLE  ...

那么,这些能在 MaxCompute Console 上运行的命令,该如何使用 MaxCompute Java SDK 运行呢?它们是与 SQL 一样通过创建 instance 的方式来运行吗?

答案:不可以,这些命令不是 SQL , 不可以通过 SQL Task 来运行。

需要使用接口 SecurityManager.runQuery() 来运行 。 详细 SDK Java Doc 戳这里

SecurityManager 类在 odps-sdk-core 中,因此在使用时请添加依赖:

  com.aliyun.odps  odps-sdk-core  0.29.11-oversea-public

下面通过一个例子来演示如何通过 MaxCompute Java SDK 来设置表 test_label 列的访问级别为 2,也就是运行命令

SET LABEL 2 TO TABLE test_label(key, value);

import com.aliyun.odps.Column;import com.aliyun.odps.Odps;import com.aliyun.odps.OdpsException;import com.aliyun.odps.OdpsType;import com.aliyun.odps.TableSchema;import com.aliyun.odps.account.Account;import com.aliyun.odps.account.AliyunAccount;import com.aliyun.odps.security.SecurityManager;public class test {  public static void main(String [] args) throws OdpsException {    try {      // init odps      Account account = new AliyunAccount("", "");      Odps odps = new Odps(account);      odps.setEndpoint("http://service-corp.odps.aliyun-inc.com/api");      odps.setDefaultProject("");      // create test table      // if u already have a table, skip this      TableSchema schema = new TableSchema();      schema.addColumn(new Column("key", OdpsType.STRING));      schema.addColumn(new Column("value", OdpsType.BIGINT));      odps.tables().create("test_label", schema);      // set label 2 to table columns      SecurityManager securityManager = odps.projects().get().getSecurityManager();      String res = securityManager.runQuery("SET LABEL 2 TO TABLE test_label(key, value);", false);      System.out.println(res);    } catch (OdpsException e) {      e.printStackTrace();    }  }}


运行结果:

程序运行完成后,在 MaxCompute Console 中运行 `desc test_lable;` 命令,可以看到 set label 已经生效了。

关于怎么使用MaxCompute Java SDK运行安全相关命令就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

运行 命令 安全 内容 文章 更多 知识 空间 篇文章 级别 项目 不错 直白 也就是 例子 关键 关键字 同学 官方 开头 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 web服务器 安全加固 织梦 数据库管理 落实网络安全防护措施报道 组装linux服务器主机配置 .net数据库增删改查 小的软件开发公司都在做什么 软件开发和设计可以同一家公司吗 手扶拖拉机视频软件开发 h3c品牌服务器 重启数据库和监听器 南通成品软件开发第一人 网络安全必读书目 拒绝沉迷网络安全上网议论文 家庭财务管理系统数据库表 网络安全小报模板慢板教学 unique在数据库中 我的世界服务器怎么关闭聊天记录 微信服务器保存用户聊天 网络安全法五十九条的理解 电子政务外网服务器连接中断 在数据库系统中使用 中国用哪个地方的服务器最好 梦幻各等级服务器人数排行 access数据库查询不可 数据库日志内容类型 戴尔720服务器进不去系统 软件开发和设计可以同一家公司吗 临沂中高端直销软件开发公司 京东服务器为什么火 公司员工信息表数据库语句
0