ClustrixDB使用sha256_password插件支持SSL和身份验证。

一些安全规则要求对存储在数据库中的用户密码进行更强的保护。与默认的mysql_native_password插件相比,sha256_password插件提供了在ClustrixDB中存储用户密码凭证的更安全的方法。当用户帐户配置为使用sha256_password插件时,该用户必须始终使用受SSL保护的连接进行连接。

下面的说明提供了配置ClustrixDB用于SSL加密连接的步骤,还配置ClustrixDB用户帐户使用SHA256密码安全性和SSL加密连接。要使用此功能,请使用下面的说明来生成证书和密钥,将它们复制到所有节点,配置数据库和用户以在适用时使用SSL(需要mysql客户机5.6.38或更高)。

一、用于SSL加密连接的ClustrixDB配置

配置ClustrixDB使用加密连接:

创建密钥和证书(使用您选择的方法),并将它们作为根用户复制到每个节点:

shell> scp server-cert.pem root@hostname:/data/clustrix
shell> scp server-key.pem root@hostname:/data/clustrix

在每个节点上,将这些文件的所有权转移给clxd用户:

shell> sudo chown clxd server-*.pem   

证书和密钥必须位于每个节点上的相同位置。

配置ClustrixDB以使用这些证书、密钥和SSL:

sql> SET GLOBAL ssl_cert = '/data/clustrix/server-cert.pem';
sql> SET GLOBAL ssl_key = '/data/clustrix/server-key.pem';
sql> ALTER CLUSTER RELOAD SSL;
sql> SET GLOBAL ssl_enabled = TRUE;

ALTER CLUSTER RELOAD SSL验证证书和密钥的位置。如果这个命令失败,clustrix.log可能包含更多的细节。

二、使用加密连接从客户端连接

MySQL客户端版本必须是5.6.38、5.7或更高版本。

如果你使用的是mysql 5.6.38客户端,你必须指定密码类型:

shell> mysql --ssl-cipher=AES256-SHA -u username -h hostname -p

如果你使用的是mysql 5.7客户端,不需要特殊的选项:

shell> mysql username -h hostname  -p    

\s的输出会显示是否启用了TLS:

sql> \s

并在输出中显示使用的加密类型:

Cipher in use is AES256-SHA

这个查询将显示所有会话使用的加密类型:

sql> select * from system.sessions;

三、设置用户

默认情况下,密码使用mysql_native_password。要更改现有用户的密码以使用sha256加密:

sql> ALTER USER 'seymour@'%' IDENTIFIED WITH sha256_password BY 'foo';

要设置回使用mysql本机密码:

sql> ALTER USER 'seymour'@’%’ IDENTIFIED WITH mysql_native_password by 'foo';

使用sha256_password身份验证创建新用户:

sql> CREATE USER 'seymour2'@'%' IDENTIFIED WITH sha256_password BY 'foo';

使用SHA256加密密码的用户必须使用加密连接连接到ClustrixDB。如果安全连接不可用,用户将遇到错误并无法连接。

关于使用SHA2的注意事项

  • 证书和密钥必须存在于所有节点上,并由clxd用户拥有
  • ClustrixDB不支持配置mysql_native_password之外的默认身份验证插件
  • ClustrixDB不支持RSA密码加密
  • 使用加密连接会带来性能开销

36. ClustrixDB 使用ClustrixDB加密连接的更多相关文章

  1. MySQL的SSL加密连接与性能开销

    本文转载自:http://www.innomysql.net/article/23959.html(只作转载, 不代表本站和博主同意文中观点或证实文中信息) Contents [hide] 1 前言 ...

  2. mysql 建立加密连接

    加密连接可提高数据的安全性,但会降低性能.要进行加密连接,必须满足以下要求: user权限表里要有相关的SSL数据列.如果安装的MySQL服务器是4.0.0版的,user权限表已包含相关的SSL数据列 ...

  3. MsSQL使用加密连接SSL/TLS

    说明 应用程序通过未加密的通道与数据库服务器通信, 这可能会造成重大的安全风险.在这种情况下, 攻击者可以修改用户输入的数据, 甚至对数据库服务器执行任意 SQL 命令. 例如,当您使用以下连接字符串 ...

  4. MSSQL - 最佳实践 - 使用SSL加密连接

    MSSQL - 最佳实践 - 使用SSL加密连接 author: 风移 摘要 在SQL Server安全系列专题月报分享中,往期我们已经陆续分享了:如何使用对称密钥实现SQL Server列加密技术. ...

  5. SQL Server使用加密连接SSL/TLS (转载)

    说明 应用程序通过未加密的通道与数据库服务器通信, 这可能会造成重大的安全风险.在这种情况下, 攻击者可以修改用户输入的数据, 甚至对数据库服务器执行任意 SQL 命令.例如,当您使用以下连接字符串时 ...

  6. Tomcat配置https加密连接

    配置https安全连接(ssl加密连接) https连接需要用到数字证书与数字签名(MD5算法),网站https连接首先需要申请数字证书,配置加密连接器,浏览器安装证书. 证书运用到RSA技术,RSA ...

  7. Mysql 5.7.18 加密连接mysql_ssl_rsa_setup

    MySQL 5.7.18 下载地址: https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64. ...

  8. SSM实现mysql数据库账号密码加密连接

    引言 咱们公司从事的是信息安全涉密应用的一些项目研发一共有分为三步,相比较于一般公司和一般的项目,对于信息安全要求更加严格,领导要求数据量和用户的用户名及密码信息都必需是要密文配置和存储的,这就涉及到 ...

  9. ip端口协议,SSHj加密连接

    SSH协议----一旦linux服务器开机,SSH协议就不断的侦听22端口,一旦有连接到达,就校验连接用户名和密码: 可以理解为连接ip端口为找到一栋大楼,发送用户名和密码为向大楼保安出示证件.SSH ...

随机推荐

  1. Nginx之rewrite四种flag

    利用nginx的rewrite命令,可以实现URL的重写,可在nginx配置文件的server.location.if部分使用,对于rewrite有四种不同的flag. redirect:返回302临 ...

  2. Oracle的查询-多表查询中的一些概念

    --笛卡尔积 select * from emp e,dept d; --等值连接 select * from emp e,dept d where e.deptno=d.deptno --内连接 s ...

  3. Python解Leetcode: 724. Find Pivot Index

    leetcode 724. Find Pivot Index 题目描述:在数组中找到一个值,使得该值两边所有值的和相等.如果值存在,返回该值的索引,否则返回-1 思路:遍历两遍数组,第一遍求出数组的和 ...

  4. ubuntu 忘记密码如何 修改密码

    ubuntu 忘记密码如何 修改密码 这个链接讲的很不错 https://blog.csdn.net/zd147896325/article/details/81664558 本来我只是玩一玩,但是我 ...

  5. RBAC授权

    RBAC RBAC使用rbac.authorization.k8s.io API Group 来实现授权决策,允许管理员通过 Kubernetes API 动态配置策略,要启用RBAC,需要在 api ...

  6. 服务器爆满:cannot create temp file for here-document: No space left on device

    1 概述 服务器的磁盘空间被占满导致TAB补全指令失效(TAB会创建临时文件) cannot create temp file for here-document: No space left on ...

  7. c#OpenCVSharp+Zxing识别条形码

    参考博客:https://www.cnblogs.com/dengxiaojun/p/5278679.html,但是他的demo下载太贵了 可以下载这个https://download.csdn.ne ...

  8. EFcore的 基础理解<三> 多对多,唯一约束

    唯一约束,替代键. modelBuilder.Entity<Car>() .HasAlternateKey(c => new { c.State, c.LicensePlate }) ...

  9. spark2.0的10个特性介绍

    1. Spark 2.0 ! 还记得我们的第七篇 Spark 博文里吗?里面我用三点来总结 spark dataframe 的好处: 当时是主要介绍 spark 里的 dataframe,今天是想总结 ...

  10. TypeScript入门四:TypeScript的类(class)

    TypeScript类的基本使用(修饰符) TypeScript类的抽象类(abstract) TypeScript类的高级技巧 一.TypeScript类的基本使用(修饰符) TypeScript的 ...