标签: aws-cli

使用 AWS CLI 在 AWS DynamoDB 中使用 Json 文件放置项目

使用 AWS CLI 将以下 JSON 放入 dynamo DB 中,并使用以下命令:

aws dynamodb put-item --table-name ScreenList --item file://tableName.json
Run Code Online (Sandbox Code Playgroud)

我收到参数验证失败异常。我已经严格浏览了 AWS 文档,但未能找到插入复杂 json 的示例。欢迎提供任何小帮助。

更新的 Json :

{
  "itemName": {
    "S": "SCREEN_LIST"
  },
  "productName": {
    "S": "P2P_MOBITEL"
  },
  "screenList": {
    "L": [
      {
        "menu": {
          "L": [
            {
              "M": {
                "menuId": {
                  "N": "1"
                },
                "menuText": {
                  "S": "ENG_HEADING"
                },
                "menuType": {
                  "S": "Dynamic"
                }
              }
            }
          ]
        },
        "M": {
          "screenFooter": {
            "S": "F_LANGUAGE_CHANGE"
          },
          "screenHeader": {
            "S": "H_LANGUAGE_CHANGE"
          },
          "screenId": { …
Run Code Online (Sandbox Code Playgroud)

json amazon-web-services amazon-dynamodb aws-cli aws-lambda

6
推荐指数
1
解决办法
7741
查看次数

AWS CLI 可以与联合登录一起使用吗?

我使用我公司的 Active Directory 账户登录 AWS。我们使用联合登录,描述在这里

联合用户和角色

联合用户不像 IAM 用户那样在您的 AWS 账户中拥有永久身份。要将权限分配给联合用户,您可以创建一个称为角色的实体并为该角色定义权限。当联合用户登录 AWS 时,该用户与角色关联并被授予角色中定义的权限。有关更多信息,请参阅为第三方身份提供者(联合)创建角色。

我的公司有一个安全令牌服务 (STS),它是 SAML 提供商。

我可以使用它登录 AWS 管理控制台,但我是否也可以使用联合登录名登录 AWS CLI?

federated-identity amazon-web-services aws-cli

6
推荐指数
2
解决办法
8320
查看次数

将文件直接通过管道传输到 AWS SSM 参数存储?

只是想知道如何将文件直接通过管道传输到 aws ssm 参数存储?例如

# Put into ssm parameter store
cat my_github_private.key | aws ssm put-parameter --region ap-southeast-1 --name MY_GITHUB_PRIVATE_KEY --type SecureString --key-id alias/aws/ssm --value ??? 
# And read it back 
aws ssm get-parameter --region ap-southeast-1 --name MY_GITHUB_PRIVATE_KEY --with-decryption --query Parameter.Value --output text > my_github_private.key.1
# Two should be identical
diff my_github_private.key my_github_private.key.1
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-cli

6
推荐指数
1
解决办法
7699
查看次数

AWS 控制台会话超时

有没有办法将 AWS 控制台会话超时限制在 1 小时以内?

我在控制台或 IAM 中的策略/角色中没有找到任何选项。请协助。

谢谢您的帮助。

amazon-ec2 amazon-web-services amazon-iam aws-cli

6
推荐指数
1
解决办法
1万
查看次数

使用具有适当内容类型的 AWS CLI 复制到 S3

我正在将静态 AngularJS 网页部署到 S3 存储桶。我使用 Jenkins,使用 AWS CLI 通过 Shell 复制文件。Groovy 中的具体命令如下所示:

// after build, files are located in frontend/target/myfrontend/
sh 'aws s3 cp frontend/target/myfrontend/ $FrontendAddress --recursive'
Run Code Online (Sandbox Code Playgroud)

我在/resources文件夹中有 SVG 图形。该图像在img标签内未正确显示,因为它的内容类型默认设置为binary/octet-stream。应该是这样image/svg+xml

如何使用aws s3 cp命令复制我的 SVG 文件,并设置正确的内容类型?

content-type amazon-s3 amazon-web-services aws-cli

6
推荐指数
2
解决办法
5891
查看次数

eks 选项在 AWS CLI 中不可用。如何安装?

我已经在大约 6 个月前安装了 AWS CLI,今天使用以下命令进行了升级。

pip install --upgrade awscli

我的 Ubuntu 18.04 机器上的当前版本是:

aws-cli/1.14.44 Python/3.6.5 Linux/4.15.0-23-generic botocore/1.8.48
Run Code Online (Sandbox Code Playgroud)

当我尝试 aws eks 命令时,出现以下错误:

Invalid choice: 'eks', maybe you meant:
    * es 
Run Code Online (Sandbox Code Playgroud)

我的 aws cli 是否已正确升级,还是应该为 EKS 服务安装其他东西?

amazon-web-services aws-cli kubernetes

6
推荐指数
2
解决办法
9061
查看次数

Amazon SageMaker:使用文件作为 multipart/form-data 调用端点

在 Amazon SageMaker 上为我的模型设置终端节点后,我尝试使用 POST 请求调用它,该请求包含一个密钥image和内容类型为multipart/form-data.

我的 AWS CLI 命令是这样的:

aws sagemaker-runtime invoke-endpoint --endpoint-name <endpoint-name> --body image=@/local/file/path/dummy.jpg --content-type multipart/form-data output.json --region us-east-1
Run Code Online (Sandbox Code Playgroud)

这应该相当于:

curl -X POST -F "image=@/local/file/path/dummy.jpg" http://<endpoint>
Run Code Online (Sandbox Code Playgroud)

运行aws命令后,文件没有通过请求传输,我的模型正在接收没有任何文件的请求。

有人可以告诉我aws为了实现这一点,命令的正确格式应该是什么?

curl amazon-web-services aws-cli amazon-sagemaker

6
推荐指数
1
解决办法
1788
查看次数

使用 awscli 获取已部署的 API 网关 URL

我有一个已部署在 API Gateway 中的 API。我正在尝试使用 cli 获取已部署 API 的 URL,但很难找到执行此操作的命令。我已经尝试了文档中的所有 get- 命令,可以在这里找到:

https://docs.aws.amazon.com/cli/latest/reference/apigateway/index.html#cli-aws-apigateway

即使使用 API 的 ID,我也无法获取部署的实际 URL。显然我可以直接转到控制台并从那里复制它,但我想知道这是否可以从 cli 中实现。谢谢。

amazon-web-services aws-cli aws-api-gateway

6
推荐指数
1
解决办法
811
查看次数

列出具有公共读取权限的 S3 对象(在私有存储桶中)

我想保护 S3 存储桶中的文件,并确保没有共享敏感文件。

我知道有多种方式(在控制台中和使用脚本)来查看哪些存储桶具有公共权限。

但是,即使对象位于私有存储桶中,也可以授予匿名读取权限。

跟踪/审核可公开读取的文件/对象可能很困难,因为除了浏览 AWS 控制台中的每个路径之外,我看不到任何找到它们的方法。

有没有办法列出存储桶中具有匿名(读取)权限的所有对象?任何方法都可以,包括 AWSCLI、Boto、REST 等。

我考虑尝试使用匿名 AWSCLI 配置文件,但这不允许列出存储桶内容,因此它只能用于单独测试文件。

我想我可以使用 Boto ( https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#objectacl )创建一个脚本。这是唯一的方法,还是有官方方法,例如 AWSCLI 命令?

amazon-s3 amazon-web-services aws-cli

6
推荐指数
1
解决办法
5932
查看次数

使用 aws cli 时访问被拒绝,但在 Web 控制台中允许访问

我的 IAM 帐户至少有“管理员”权限。据我所知,我可以在 Web 控制台中执行所有操作。例如, aws gui

最近我下载了 aws-cli 并通过提供访问密钥、默认区域和输出格式快速配置了它。然后我尝试发出一些命令,发现其中大部分(但不是全部)都有权限问题。例如

$ aws --version
aws-cli/1.16.243 Python/3.7.4 Windows/10 botocore/1.12.233
$ aws s3 ls s3://test-bucket

An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied
$ aws ec2 describe-instances

An error occurred (UnauthorizedOperation) when calling the DescribeInstances operation: You are not authorized to perform this operation.
$ aws iam get-user
{
    "User": {
        "Path": "/",
        "UserName": "xxx@xxx.xxx",
        "UserId": "xxxxx",
        "Arn": "arn:aws:iam::nnnnnnnnnn:user/xxx@xxx.xxx",
        "CreateDate": "2019-08-21T17:09:25Z",
        "PasswordLastUsed": "2019-09-21T16:11:34Z"
    }
}
Run Code Online (Sandbox Code Playgroud)

在我看来,使用访问密钥进行身份验证的 cli 与使用 MFA 进行身份验证的 …

aws-cli

6
推荐指数
2
解决办法
2644
查看次数