Redis security best practices建议重命名命令以抑制未经授权/意外的执行。 使用 ServiceStack.Redis 客户端发出任意(重命名)命令的最佳方式是什么?
到目前为止我们所做的尝试:我们已将 PUBLISH 命令重命名为 HSILBUP。我尝试使用以下代码块发出 HSILBUP 命令。这会在调用 FlushSendBuffer
时导致空引用异常。我使用这些方法是因为它们的名字暗示了我想要的行为。我不知道这是否是他们的预期功能。
var command = new[]
{
ToByteArray("HSILBUP"),
ToByteArray("channel"),
ToByteArray("message")
};
redisClient.WriteAllToSendBuffer(command);
redisClient.FlushSendBuffer();
最佳答案
最简单的更改是直接在 ServiceStack.Redis 项目代码中进行更改。您需要更改 Commands.cs
将此更改为:
public readonly static byte[] Publish = "PUBLISH".ToUtf8Bytes();
到:
public readonly static byte[] Publish = "HSILBUP".ToUtf8Bytes();
关于c# - 如何使用 ServiceStack.Redis 客户端向 Redis 发送任意命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16923080/