amazon-web-services - “aws dynamodb list-tables”不适用于 ec2 实例
问题描述
我创建了一个连接到 DynamoDB 的 node.js 应用程序。在本地一切正常现在我正在尝试在 AWS 服务器上进行设置。
- 首先,我从 AWS DynamoDB 控制台创建了 DynamoDB 表。它工作正常。
- 我从 IAM 管理控制台 > 角色创建了一个新角色以访问 DynamoDB。并将该角色附加到 EC2 实例。但是,当我启动任何 aws dynamodb cli 命令时,我在提及该区域时都会出错。
- 所以我去了 IAM 管理控制台 > 用户,并为我的管理员类型用户创建了一个访问密钥。
ec2-user
现在,我使用aws configure
之前生成的访问密钥登录到 EC2 CLI。
AWS Access Key ID [None]: ACCESS KEY
AWS Secret Access Key [None]: SECRET
Default region name [None]: us-east-1
Default output format [None]: json
- 但是当我使用以下命令时
aws dynamodb list-tables
。它没有输出,没有错误。
解决方案
正如我所评论的,主要问题是附加安全组的出站规则。这里有必要做的事情
- 将安全组出站规则设置为 HTTPS
- 设置凭据
- 从 IAM 管理控制台 > 用户创建访问密钥。
- SSH 到 EC2 实例。
aws configure
使用命令或直接修改~/.aws/credentials
文件配置 EC2 实例的凭证。
- 附加角色
创建 VPC 端点虽然是可选的,但很好。如果您UnauthorizedOperation
在创建终端节点时遇到错误,AmazonEC2FullAccess
请从 IAM 控制台为用户分配权限。如果您不需要它,请稍后将其删除。
要从您的应用程序中使用 AWS 服务,请从此列表中找到相关的终端节点。
推荐阅读
- java - ZonedDateTime.parse(...) 与 ZonedDateTime.of(...)
- python - 我们如何检查时间序列中的预测准确性?
- java - 将 ArrayList 从 RecyclerView 传递到另一个 Activity
- powershell - 如何在 wsl2 上使用 linux dd 命令刻录可启动 USB?
- python - 一次将列表元素附加到列表两个元素的列表中
- java - 如何创建一个简单的 Java + Maven 可插拔应用程序?
- ubuntu - 由于缺少 ~/.kube/config,oc cluster up 无法启动 kube-apiserver
- javascript - 在 wordpress 中自定义(或创建)添加新内容
- raspberry-pi - “内部数据流错误。” 在 gstreamer 中使用 omxh264enc 时
- sql-server - 使用存储在 tempdb 中的值更新同义词表