首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

在 PureData System for Hadoop 内实现安全性(3)

在 PureData System for Hadoop 内实现安全性(3)

配置 Big SQL 安全性Big SQL 是连接基于 Hadoop 的平台 InfoSphere BigInsights 的 IBM SQL 接口,旨在为 SQL 开发人员提供查询 Hadoop                所管理的数据的能力。您可以为 Big SQL 启用其自己的身份验证、授权和加密。这些安全特性是 Big SQL 独有的,已直接构建到 Big SQL 中。
以下各节将介绍如何通过更新 $BIGSQL_HOME/conf/ 目录中的 Big SQL 配置文件                bigsql-conf.xml,配置身份验证、授权和加密。要让更改生效,必须重新启动 Big SQL 服务器。
启用身份验证更新 $BIGSQL_HOME/conf/ 目录中的 bigsql-conf.xml 配置文件。要使用 InfoSphere BigInsights 控制台作为 Big                SQL 的身份验证器,需要将 bigsql.security.authenticator 值设置为                    WebConsole,这也是默认值,如下面这条命令所示:
1
<bigsql.security.authenticator value="WebConsole">




备注:正确配置身份验证后,Big SQL 将用户凭据发送给 InfoSphere BigInsights                控制台来执行身份验证。基于用户的有效性,InfoSphere BigInsights 向 Big SQL 提供用户角色。
启用授权与 biadmin 用户一样,在 HDFS 中为所有用户创建个人目录。在这些目录中,它们可创建私有、共享或公共的模式和表。要启用授权,可从 Hadoop                Distributed File System 内的命令行发出以下命令。
1
2
3
$HADOOP_HOME/bin/hadoop fs -mkdir /user/user_id<br>
$HADOOP_HOME/bin/hadoop fs -chown user_id:group_id /user/user_id
$HADOOP_HOME/bin/hadoop fs -chmod 755 /user/user_id




更新 $BIGSQL_HOME/conf/ 目录中的 bigsql-conf.xml 配置文件。使用下面这条命令,将 authorizer 设置为授权模式:
1
<bigsql.security.authorizer value="authorization_mode">




授权模式使用 HDFS 权限来控制数据访问。为 authorization_mode 选择以下值之一:
  • none— 在安全无关紧要时使用此模式。Big SQL                    服务器内的所有操作都使用超级用户或管理用户授权来完成,无论是谁连接到服务器。
  • dataSource:如果当前连接的用户是管理用户,那么服务器将会使用与 Big SQL 服务器进程所有者(通常是                    biadmin)相同的用户 ID 来执行任务,比如读取 HDFS 文件,写入到 HDFS 文件,以及生成 MapReduce                    作业。如果当前用户不是管理用户,那么这些任务将使用当前连接的用户的用户 ID 来执行。
启用 SSL 加密要启用 SSL 加密,必须配置服务器和客户端。
要配置 Big SQL 服务器:
  • 使用以下值更新 $BIGSQL_HOME/conf/ 目录中的 bigsql-conf.xml                        配置文件:
    1
    2
    3
    4
    5
    6
    7
    8
    <bigsql.security.ssl value="true"/>
    <!-- location of keystore file. keystore file contains private key.
    keystore file can be created using $JAVA_HOME/bin/keytool -->
    <bigsql.security.ssl.keyStore value="/path/to/keystore_file">
    <!-- Keystore file password --><br>
    <bigsql.security.ssl.keyStore.passWord value="password_for_keystore_file"/>
    <!-- Key Manager -->
    <bigsql.security.ssl.keyStore.keyManager value="keymanager_value"/>




  • 重新启动 Big SQL 服务器。
要为 Big SQL (JDBC) 客户端配置 SSL:
  • 确保已使用下面这条命令导入 Big SQL                        服务器在信任库文件中提供的证书:
    1
    $JAVA_HOME/bin/keytool




  • 在 JDBC 应用程序中,使用以下连接 URL                        和命令:
    1
    2
    jdbc:bigsql://<host>:<port>/<database>:<parameter>=<value>;
    <parameter2>=<value2>...




  • 设置这些参数和值对:
    1
    2
    3
    4
    5
    6
    user=<username>
    password=<password>
    SSL=true
    truststore=/path/to/truststore_file
    truststore.password=truststore_password
    keymanager=IbmX509




返回列表