簡體   English   中英

未授權 dynamodb:PutItem

[英]Not Authorized for dynamodb:PutItem

嗨,當我嘗試向我的 lambda 函數發送請求並將數據存儲在 dynamodb 中時,我收到以下錯誤。 該項目是使用無服務器框架構建的。

錯誤消息:用戶:無權執行:dynamodb:PutItem on resource:arn:aws:dynamodb:#{AWS::Region}:#{AWS::AccountId}:table/${self:service}-OrdersTable- ${sls:階段}

無服務器.yml

iam:
    role:
      statements:
        - Effect: Allow
          Action:
            - dynamodb:PutItem
            - dynamodb:GetItem
          Resource: arn:aws:dynamodb:#{AWS::Region}:#{AWS::AccountId}:table/{self:service}-OrdersTable-${sls:stage}
        - Effect: Allow
          Action:
            - kinesis:PutRecord
          Resource: arn:aws:kinesis:#{AWS::Region}:#{AWS::AccountId}:stream/{self:service}-OrderStream-${sls:stage}

角色聲明看起來不錯。 檢查您是否為您的功能正確設置了此角色... https://www.serverless.com/framework/docs/providers/aws/guide/iam

或者嘗試直接為函數設置 iamRoleStatements 以檢查權限部分是否正常工作。 這是該https://medium.com/@glicht/serverless-framework-defining-per-function-iam-roles-c678fa09f46d的示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM