AWS DynamoDB是否可通过HTTPS/SSL提供,以及是否支持SNI?

wwtsj6pe  于 5个月前  发布在  其他
关注(0)|答案(2)|浏览(48)

刚开始使用亚马逊的DynamoDB。我计划让客户端通过一个运行在https上的JS客户端应用程序直接访问DynamoDB。
所以我想知道DynamoDB是否支持SSL?
自定义虚拟域(通过CNAME和SNI证书,如CloudFront)是否也是虚拟的?

gkl3eglg

gkl3eglg1#

这个问题给我提出了许多相关的问题;我找到了一些答案:

***哪个版本的SSL/TLS?**AWS记录DynamoDB使用TLS 1.2而不是1.3(截至撰写此答案时):https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/network-isolation.html
*TLS是开箱即用的吗?(TL;DR:no)AWS没有确切地记录这一点。有普通HTTP端点和HTTPS端点。如果请求,HTTP似乎可以直接使用,因为以下AWS CLI命令工作,给出与HTTPS相同的输出,并且调试日志表明使用了普通HTTP:

aws dynamodb --debug --endpoint-url http://dynamodb.us-east-1.amazonaws.com list-tables

字符串

*策略或配置是否需要TLS?(TL;DR:no)An answer to a related question表示可以使用HTTPS端点URL在客户端强制执行。但是,与可能需要安全传输的S3存储桶策略不同,DynamoDB中没有“表策略”。此外,似乎没有CreateTable的相关选项,似乎也没有服务级别配置选项。

据我所知,这使得唯一的选择,以绝对保证在运输中的预防为:

  • 强制使用HTTPS端点URL的客户端配置,但任何错误配置的客户端都可以轻松绕过此配置(因此这只是“机会主义加密”);
  • 客户端加密,即您只存储使用您管理的密钥显式加密的数据(一些库可能会帮助实现这一点,使其更加透明)。这可能会影响您的哈希(分区)和/或范围(排序)密钥的可用性以服务查询。

作为最后一点,关于虚名的部分在我看来是非常不同的,应该单独询问。我猜这是不可能的,虽然,因为DynamoDB API请求必须签名,签名必须包括端点URL,但是没有办法配置DynamoDB来识别官方端点之外的端点。

ippsafx7

ippsafx72#

DynamoDB在它所在的每个区域都有HTTPS端点。

相关问题