当前位置: 首页 > 知识库问答 >
问题:

AWS anonymous未被授权对资源执行:execute-api:invoke。专用API网关

帅令雪
2023-03-14
 anonymous is not authorized to perform: execute-api:Invoke on the resource.

我找不到问题,因为私有API网关的资源策略如下所示:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "execute-api:Invoke",
            "Resource": "arn:aws:execute-api:eu-central-1:xxxxxxx:xxxxxx/*",
            "Condition": {
                "StringEquals": {
                    "aws:sourceVpce": "vpce-xxxxxxxx"
                }
            }
        }
    ]
}

我错过了什么?

共有1个答案

邓季
2023-03-14

我已经审阅了你所提供的文件和你所写的文件。我相信我找到了你访问问题的原因。

正如您提到的,您在公共子网中创建了一个EC2实例。默认情况下,该子网将有一个可用的internet网关,因此实际上您的VPCendpoint不会被用于访问专用API网关。在文件中,他们还说:

为了强调此API的“私密性”,请从一个仅存在于您的VPC内部且没有直接网络访问的资源(在传统的网络意义上)对其进行测试。

    null
 类似资料:
  • 我有一个 AWS 账户,在该账户中,我代入一个名为 A() 的角色,我从该角色通过 Web 控制台创建了另一个名为 B() 的角色,并将管理员策略附加到该角色 这是cli配置 我从 创建 当我试图得到角色细节时 我收到以下错误 调用假设角色操作时发生错误 (访问消除): 用户: arn:aws:iam::

  • 我正在尝试将文件从一个账户(源账户)中的 S3 存储桶移动到另一个账户(目标账户)中的 S3 存储桶,我正在使用 sagemaker 笔记本,因此我有一个 sagemaker 角色。我在我的团队帐户中也有一个角色,它具有完全的s3访问权限和完全的管理员访问权限,并且在信任关系中,我为目标帐户角色arn和sagemaker角色arn提供了一个角色。目标帐户在其信任策略中还具有我的团队角色 arn 和

  • 我在使用PHP api实际版本的示例时遇到了一个问题,并且使用了examples文件夹的“service-account.PHP”文件。 null null 以下是错误堆栈: null null

  • 问题内容: 我仅在使用PHP api实际版本的示例并使用examples文件夹的“ service-account.php”文件时遇到问题。 原来是用于显示“ Books API”的,并且通过我的个人凭据配置可以很好地工作,但是在我的xcase中,我需要通过directory.groups.get服务进行访问,以获取Google网上论坛邮件列表的会员帐户列表,所以我在其中更改了原始代码: 无论我做

  • 我在帐户a中有一个lambda函数,试图从帐户B访问资源。创建了一个新的lambda角色,该角色具有基本执行功能,可以将日志上载到cloud watch。 以下是我在Python 3.7中的函数代码: 还修改了账户B中假定角色的信托政策,如文件中所述:https://aws.amazon.com/premiumsupport/knowledge-center/lambda-function-ass

  • 我创建了一些Lambda函数,并使用SAM进行了部署。部署是成功的,但当试图到达endpoint时,我总是获得 即使我使用头发送正确的承载令牌。然后,如果我去Authorizer并运行测试,它会很好地通过并在CloudWatch中生成日志,但是当我从前端应用程序或REST客户端应用程序运行到endpoint的请求时,我会得到未经授权的消息,并且检查CloudWatch,就不会执行Authorize