首页
/ Redis-py 5.3.0 新增 Microsoft Entra ID 认证支持

Redis-py 5.3.0 新增 Microsoft Entra ID 认证支持

2025-05-17 12:08:22作者:魏献源Searcher

Redis-py 作为 Python 生态中最流行的 Redis 客户端之一,在最新发布的 5.3.0 版本中新增了对 Microsoft Entra ID(原 Azure Active Directory)认证的支持。这一重要更新使得开发者能够更安全地连接 Azure Cache for Redis 服务。

背景与需求

在云原生应用开发中,身份认证和访问控制是至关重要的安全环节。Azure Cache for Redis 服务支持使用 Microsoft Entra ID 进行身份验证,这种基于令牌的认证方式相比传统密码认证提供了更高的安全性。然而,在 5.3.0 版本之前,redis-py 客户端缺乏对令牌自动刷新的支持,这限制了开发者使用这种认证方式的能力。

技术实现

新版本通过引入 Entra ID 作为 IdentityProvider 的方式解决了这个问题。具体实现包括:

  1. 令牌获取机制:客户端能够从 Microsoft Entra ID 获取访问令牌
  2. 自动刷新功能:当检测到令牌即将过期时,客户端会自动刷新令牌
  3. 无缝认证:在连接建立和重新连接时自动使用最新令牌进行 AUTH 命令认证

使用方法

开发者现在可以通过简单的配置使用 Entra ID 认证:

from redis import Redis
from redis.credentials import EntraIDCredentialProvider

# 创建 Entra ID 认证提供者
credential_provider = EntraIDCredentialProvider(
    client_id="your-client-id",
    client_secret="your-client-secret",
    tenant_id="your-tenant-id"
)

# 创建 Redis 客户端
redis_client = Redis(
    host="your-redis-host",
    port=6380,
    ssl=True,
    credential_provider=credential_provider
)

优势与价值

这一更新为开发者带来了以下好处:

  1. 增强安全性:使用短期有效的令牌而非长期有效的密码
  2. 简化管理:与 Azure 身份管理系统集成,实现集中式访问控制
  3. 自动维护:无需手动处理令牌过期问题,客户端自动维护认证状态
  4. 合规性:满足企业级安全合规要求

总结

Redis-py 5.3.0 对 Microsoft Entra ID 认证的支持标志着该项目在云原生支持方面又迈出了重要一步。这一功能使得 Python 开发者能够更安全、更方便地使用 Azure Cache for Redis 服务,同时也为其他 Redis 服务的现代化认证方式支持奠定了基础。

登录后查看全文
热门项目推荐
相关项目推荐