是否有任何方法可以直接从客户端向数据库插入数据,而无需通过服务器?
如果没有,为什么?
SimeplDBAdmin是一个基于Javascript/PHP的界面:
http://awsninja.com/2010/07/08/simpledbadmin-a-phpmyadmin-like-interface-for-amazon-simpledb/
PHP端是一个中继脚本[relay.php],它将通过Javascript客户端发出的请求传递并发送到服务器,接收来自服务器的响应并重新格式化以供客户端使用。这是为了轻松解决Javascript的跨域问题[如果Web客户端从www.example.com下载包含Javascript代码的网页,那么默认情况下只允许Javascript连接回www.example.com]。
其他所有内容,包括请求签名,都由Javascript代码完成。
还要注意,亚马逊最近发布了一个新的测试版服务,允许您在您的亚马逊帐户下设置子帐户。SimpleDB保护非常基本[每个帐户只能开启或关闭],但是由于它确实提供了一定程度的请求跟踪,因此可以认为使用Javascript并为每个用户提供其自己的userid和用于请求签名的key更安全。当然,让每个用户使用相同的userid和证书是不安全的。
已有一款免费的、纯 JavaScript 的界面可供使用。请参见https://chrome.google.com/webstore/detail/ddhigekdfabonefhiildaiccafacphgg
参见 this answer">此答案,该答案为允许不受信任的客户机从 SimpleDB 中安全、匿名、只读访问的类似问题提供了解决方案:anonymous read with amazon simpledb">Amazon SimpleDB 匿名只读访问。
与该答案相比有一些变化: