Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services x-api-key只保护一些资源_Amazon Web Services_Flask_Aws Lambda_Aws Api Gateway_Zappa - Fatal编程技术网

Amazon web services x-api-key只保护一些资源

Amazon web services x-api-key只保护一些资源,amazon-web-services,flask,aws-lambda,aws-api-gateway,zappa,Amazon Web Services,Flask,Aws Lambda,Aws Api Gateway,Zappa,我的设置: 烧瓶-awsLambda-zappa-api网关 我有一个通过上述服务运行的简单应用程序。 在我的zappa_settings.json中,我将“api_key_required”设置为true 可以这样设置吗?我将为每个资源端点使用api键,但只有一个端点(swagger文档) 如果,是的,我必须在哪里设置它。我的flask应用程序中没有任何api密钥设置,所以我假设必须在aws.console中的某个地方进行设置,但我找不到它 编辑: 下面是正确答案的补充。如果使用,仅添加一个指

我的设置:

烧瓶-awsLambda-zappa-api网关

我有一个通过上述服务运行的简单应用程序。 在我的zappa_settings.json中,我将“api_key_required”设置为true

可以这样设置吗?我将为每个资源端点使用api键,但只有一个端点(swagger文档)

如果,是的,我必须在哪里设置它。我的flask应用程序中没有任何api密钥设置,所以我假设必须在aws.console中的某个地方进行设置,但我找不到它

编辑: 下面是正确答案的补充。如果使用,仅添加一个指向/apidocs的公共端点是不够的。要使文档在没有api密钥的情况下工作,我必须打开以下几点:

  • /apidocs/apidocs/{proxy+}
  • /apispec_1.json-在您的情况下可能会有所不同
  • /flasger_static/flasger_static/{proxy+}

  • 是的,这可以通过AWS控制台中的一些配置实现

    在API网关设置中,您可能拥有使用Zappa部署创建的默认资源:
    /
    /{proxy+}

    现在,您可以手动创建与文档端点对应的新资源(例如,
    /docs

    单击“操作”->“创建资源”可以创建新资源:

    创建资源后,单击“操作”->“创建方法”并选择“任意”。将方法和资源指向对话框中的Lambda函数

    默认情况下,新资源不需要API密钥

    注意:在更改生效之前,您可能需要重新部署网关。“操作”->“部署API”