在AWS上保护Cassandra数据库

时间:2016-06-08 16:46:05

标签: security amazon-web-services cassandra datastax cassandra-2.0

我最近在AWS上创建了一个Cassandra集群。我还写了一个客户端程序来访问它。一切正常。但是,我担心安全问题。在我的客户端程序中,我只需知道群集的IP地址,然后我就可以连接到它并在其上运行查询。安全性不是很糟糕吗?人们通常如何安全地做到这一点?

由于

3 个答案:

答案 0 :(得分:1)

您应该已经为群集定义了一个安全组,即使它们是默认的。查看Security Groups for Your VPC

至少应限制公众对服务所需端口的访问权限。

我会诚实地将其与您的IP号绑定,直到您更好地掌握实施的整体安全要求。

答案 1 :(得分:0)

默认情况下,Cassandra安装时会禁用所有安全功能。您可以启用四个主要功能:

  • Internal Authentication:这样可以对您的群集进行用户名/密码访问。您可以点击该链接,并在您的cassandra.yaml中设置authenticator: PasswordAuthenticator以启用。
  • Internal Authorization:这可以在Cassandra中启用权限安全性。再次,查看链接中的信息,并在cassandra.yaml中设置authorizer: CassandraAuthorizer以启用。
  • Client-to-Node encryption:这可以保护您的客户端应用和群集之间的数据。
  • Node-to-Node encryption:这可以保护群集中不同节点之间的数据。

至少,我建议启用内部身份验证和授权。 SSL加密稍微复杂一些(虽然仍然是一个好主意),但可能需要根据您的公司政策和数据的敏感性。当然,这是将适当的AWS安全组应用于您的群集的补充。

答案 2 :(得分:0)

最好有两个安全组,一个用于Cassandra,另一个用于应用程序。 Cassandra节点仅分配内部IP,不分配公共IP,并且仅限制从应用程序安全组访问Cassandra端口。这确保只有应用程序才能访问Cassandra。

您还应该在official security guide

之后启用Cassandra身份验证和授权