【问题标题】:Encrypt Redis message on Azure using ServiceStack使用 ServiceStack 在 Azure 上加密 Redis 消息
【发布时间】:2017-07-05 19:31:37
【问题描述】:
我有一个问题,我们使用 ServiceStack 的 Redis 实现通过服务器发送的事件进行多服务器缓存和消息传递。作为我们安全协议的一部分,我们需要对进入 Redis 的数据进行加密。我想知道过去是否有人这样做过,他们的经验是什么?有没有一种简单的方法可以做到这一点,还是我们必须编写我们的自定义 Redis 实现?如果有帮助,我们将在 Azure 上使用 Redis。
【问题讨论】:
标签:
azure
redis
servicestack
servicestack.redis
azure-redis-cache
【解决方案1】:
您不必编写自定义 Redis 客户端,但您需要使用 ServiceStack.Redis 原始 IRedisNativeClient API 以便能够存储加密的 byte[] 值。 RedisClient 继承自 RedisNativeClient,您可以将其转换为以访问低级 byte[] API,例如:
using (var redis = clientsManager.GetClient())
{
var redisNative = (RedisNativeClient)redis;
}
ServiceStack 在其 ServiceStack.Client 库中还有一个高级 CryptUtils 可用,它提供了一个简单的 API 来使用 AES 或 RSA 加密来加密值。