如何连接ACL认证的Redis

点击上方蓝字关注我

c8194c2fc3d43222edbe387f8e53c3e0.png

应用程序连接开启了ACL认证的Redis时与原先的方式有差别,本文介绍几种连接开启ACL认证的Redis的Redis的方法。

对于RedisACL认证相关内容,可以参考历史文章:

Redis权限管理体系(一):客户端名及用户名

Redis权限管理体系(二):终于等来了Redis权限控制体系ACL

Redis权限管理体系(三):ACL 配置持久化

1. Python 程序

如果你想使用python通过用户名密码连接开启ACL的Redis,你可以参考以下的方法:
首先,需要安装redis-py库,这是一个python的Redis客户端,可以方便地操作Redis。可以使用pip或者conda来安装redis-py库。

其次,需要创建一个Redis对象,用来连接Redis服务器。可以使用Redis的构造函数来指定host,port,username和password。
例如,Redis服务器的地址是localhost,端口是6379,用户名是admin,密码是123456,对应连接方式如下:

import redis
r = redis.Redis(host='localhost', port=6379, username='admin', password='123456')
r.set('test1','1111')
v=r.get('test1')
print(v)

运行结果如下:

3f118c0acd79fe7157450334cf440a87.png

2.  java程序

2.1 jedis

如果使用的是java程序,且通过jedis连接Redis6,可以参考以下的方法:

•  首先,需要引入jedis的依赖包,jedis是一个java的Redis客户端,可以方便地操作Redis。可以从这里https://blog.csdn.net/H1455483319/article/details/109036679下载jedis.jar,或者使用maven或gradle来管理你的依赖。
•  其次,需要创建一个Jedis对象,用来连接Redis服务器。可以使用Jedis的构造函数来指定host,port,user和password。例如,Redis服务器的地址是localhost,端口是6379,用户名是admin,密码是123456,可以这样创建Jedis对象:

Jedis jedis = new Jedis("localhost", 6379, "admin", "123456");


•  最后,就可以使用jedis对象来执行各种Redis命令,比如set,get,lpush等。你可以参考jedis的官方文档https://www.runoob.com/redis/redis-java.html来了解更多的用法。

2.2 lettuce
如果你想使用Lettuce处理,可以参考以下的方法:

  • 首先,你需要创建一个RedisURI对象,用来指定连接的地址,端口,数据库,用户和密码。你可以使用RedisURI的静态方法create来从一个URI字符串创建一个RedisURI对象。例如,如果你的Redis服务器的地址是localhost,端口是6379,数据库是0,用户名是admin,密码是123456,你可以这样创建RedisURI对象:

    RedisURI redisURI = RedisURI.create("redis://admin:123456@localhost:6379/0");
  • 然后,需要创建一个RedisClient对象,用来创建和管理Redis连接。可以使用RedisClient的静态方法create来从一个RedisURI对象创建一个RedisClient对象。

RedisClient redisClient = RedisClient.create(redisURI);
  • 从RedisClient对象获取一个StatefulRedisConnection对象,用来执行Redis命令。可以使用RedisClient的connect方法来获取一个StatefulRedisConnection对象。

StatefulRedisConnection<String, String> connection = redisClient.connect();
  • 完成后就可以使用connection对象来执行各种Redis命令,比如set,get,lpush等。参考Lettuce的官方文档https://github.com/lettuce-io/lettuce-core/wiki/Redis-URI-and-connection-details 可以了解更多的用法。

6bb161ee60c9dcf944440ee5930408eb.png

往期精彩回顾

1.  MySQL高可用之MHA集群部署

2.  mysql8.0新增用户及加密规则修改的那些事

3.  比hive快10倍的大数据查询利器-- presto

4.  监控利器出鞘:Prometheus+Grafana监控MySQL、Redis数据库

5.  PostgreSQL主从复制--物理复制

6.  MySQL传统点位复制在线转为GTID模式复制

7.  MySQL敏感数据加密及解密

8.  MySQL数据备份及还原(一)

9.  MySQL数据备份及还原(二)

b3197df1de48554fc0d07e85932598d2.png

扫码关注     

110edf4d777c8780823721fa04ef3810.jpeg

f313debc5f23e99ce00329675534c783.png

a127fa967c7786131ea407684a991e79.png

  • 6
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值