Amazon web services aws cli cloudformation lambda无效输入错误

Amazon web services aws cli cloudformation lambda无效输入错误,amazon-web-services,aws-lambda,amazon-cloudformation,aws-cli,Amazon Web Services,Aws Lambda,Amazon Cloudformation,Aws Cli,我尝试使用以下示例修改java中lambda函数的示例: 但在这个过程中,我开始出现随机错误,因此我开始删除堆栈和剩余资源,并再次无锁地进行跟踪。所以我决定重新下载这个例子,但是错误不会消失 甚至尝试了aws nuke,但在尝试部署示例时,以下错误仍然存在: { "StackId": "arn:aws:cloudformation:us-east-2:XXXXX:stack/s3-java/XXX", "Even

我尝试使用以下示例修改java中lambda函数的示例:

但在这个过程中,我开始出现随机错误,因此我开始删除堆栈和剩余资源,并再次无锁地进行跟踪。所以我决定重新下载这个例子,但是错误不会消失

甚至尝试了aws nuke,但在尝试部署示例时,以下错误仍然存在:

{
        "StackId": "arn:aws:cloudformation:us-east-2:XXXXX:stack/s3-java/XXX",
        "EventId": "functionRole-CREATE_FAILED-2021-03-26T22:38:14.278Z",
        "StackName": "s3-java",
        "LogicalResourceId": "functionRole",
        "PhysicalResourceId": "s3-java-functionRole-13JFU76O57RLT",
        "ResourceType": "AWS::IAM::Role",
        "Timestamp": "2021-03-26T22:38:14.278000+00:00",
        "ResourceStatus": "CREATE_FAILED",
        "ResourceStatusReason": "ARN AWSLambdaReadOnlyAccess is not valid. (Service: AmazonIdentityManagement; Status Code: 400; Error Code: InvalidInput; Request ID:XXXXXXX; Proxy: null)",
        "ResourceProperties": "{\"ManagedPolicyArns\":[\"arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole\",\"arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess\",\"AWSLambdaReadOnlyAccess\",\"arn:aws:iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole\",\"arn:aws:iam::aws:policy/AmazonS3FullAccess\"],\"AssumeRolePolicyDocument\":{\"Version\":\"2012-10-17\",\"Statement\":[{\"Action\":[\"sts:AssumeRole\"],\"Effect\":\"Allow\",\"Principal\":{\"Service\":[\"lambda.amazonaws.com\"]}}]},\"Tags\":[{\"Value\":\"SAM\",\"Key\":\"lambda:createdBy\"}]}"
    }

当我转到IAM策略时,没有称为AWSLAMBDARADONLYACCESS的策略。如何解决此问题?

2021年3月1日之后,AWS管理的策略AWSLAMBDADADONLYACCESS和AWSLambdaFullAccess将被弃用,并且不能再附加到新的IAM用户。有关策略弃用的更多信息,请参阅IAM用户指南中弃用的AWS托管策略。[1]

AWSLambda_ReadOnlyAccess的亚马逊资源名为arn:aws:iam::aws:policy/AWSLambda_ReadOnlyAccess。您必须指定完整的ARN。由于在模板中使用AWS::Serverless::函数,因此放置AWSLambda_ReadOnlyAccess应该可以解决此问题。我不知道aws nuke是否也会删除aws管理的策略,但需要谨慎

[1]