小编Max*_*rgi的帖子

AWS Step Functions 数据限制

我正在设计一个状态机,它将运行两个 lambda 函数,每个函数并行返回一个 Json 数组。此外,这些函数的结果然后传递给另外两个 lambda 函数,这些函数将接受这些输入并添加到数据库中。我已经准备好所有功能并单独工作,但是当我执行状态机时,它说其中一个执行失败,因为 DataLimitExceeded。我检查了文档,它说输入或输出结果的限制是 32.768 个字符。奇怪的是,执行成功的是 Json 对象返回的大约 50k 个字符,而失败的大约 46k 个字符。那么,如果两者都超过了限制,为什么其中一个失败而另一个没有!

{
  "StartAt": "Sync",
  "States": {
    "Sync": {
      "Type": "Parallel",
      "Next": "EnviarNotificacion",
      "Branches": [
        {
          "StartAt": "SyncClientes",
          "States": {
            "SyncClientes": {
              "Type": "Task",
              "Resource": "arn...",
              "Next": "AddClientes"
            },
            "AddClientes" : {
              "Type": "Task",
              "Resource": "arn...",
              "End": true
            }
          }
        },
        {
          "StartAt": "SyncArticulos",
          "States": {
            "SyncArticulos": {
              "Type": "Task",
              "Resource": "arn...",
              "Next": "AddArticulos"
            },
            "AddArticulos": {
              "Type": "Task",
              "Resource": "arn...",
              "End": true
            }
          }
        } …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-lambda aws-step-functions

7
推荐指数
1
解决办法
6102
查看次数

AWS Cognito Groups 和 AWS Api Gateway

我从 AWS 上的无服务器开始,我使用 AWS Cognito 进行用户身份验证和授权。对于我在文档和示例中看到的内容,您可以创建组以允许某些用户能够使用 Api 网关端点,将角色和策略附加到该组。我尝试了这个,然后制作了一个简单的客户端并尝试使用两个不同的用户,并且两者都能够获得 200 状态代码,而不是其中一个获得它是未经授权的。为了创建角色,我转到 IAM,创建角色,身份提供商访问角色,授予对 Web 身份提供商的访问权限,然后我选择 Amazon Cognito 并选择我的 Cognito 用户池。信任关系:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Federated": "cognito-identity.amazonaws.com"
      },
      "Action": "sts:AssumeRoleWithWebIdentity",
      "Condition": {
        "StringEquals": {
          "cognito-identity.amazonaws.com:aud": "us-east-1_8TAUVKbGP"
        }
      }
    }
  ]
} 
Run Code Online (Sandbox Code Playgroud)

政策:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "execute-api:Invoke"
            ],
            "Resource": [
                "my-arn-resourse-from-api-gateway"
            ]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

然后我将此角色分配给我的管理员组并将用户添加到该组,这应该允许通过在用户登录时将该策略附加到该用户来访问该 Api Gateway 资源。但是当我尝试使用不在该组中的用户时仍然有效。顺便说一下,在请求中的 Api Gateway 资源上,我对我的认知池进行了授权。

非常感谢!

amazon-web-services aws-api-gateway aws-cognito

4
推荐指数
1
解决办法
1995
查看次数