Шаблон SAM: Cognito User Pool интегрируется в APIgateway - Authorizer не работает - PullRequest
0 голосов
/ 21 декабря 2018

Я хочу интегрировать токен Cognito в свое приложение.

Как мне это сделать в AWS Sam Template?Чтобы обновить мой шаблон, я смотрю https://docs.aws.amazon.com/fr_fr/apigateway/latest/developerguide/apigateway-enable-cognito-user-pool.html?shortFooter=true

Информация:

  • Мой UserPool создан в консоли AWS (в Интернете)
  • Iтест с почтальоном без заголовка: если это сработало, мне должно быть отказано ==> правда: у меня есть результаты (мой Authorizer не работает)

=========================

Мой вопрос: почему не работает Authorizer?

AWSTemplateFormatVersion: '2010-09-09'
Transform: 'AWS::Serverless-2016-10-31'
Globals:
  Function:
    Runtime: nodejs6.10
    Handler: index.handler
    Timeout: 30
Resources:
  GRApi:
    Type: 'AWS::Serverless::Api'
    Properties:
      Name: 'Myname'
      StageName: !Ref Stage
      Cors: "'*'"
      EndpointConfiguration: REGIONAL
      DefinitionBody:
        swagger: "2.0"
        info:
          version: "1.0"
          title: "myTitle"
          host: !Ref Host
        securityDefinitions:
          cognitoUserPool:
            type: apiKey
            name: Authorization
            in: header
            x-amazon-apigateway-authtype: cognito_user_pools
            x-amazon-apigateway-authorizer:
              type: cognito_user_pools
              providerARNs: 
                - "arn:aws:cognito-idp..."
        schemes:
          - "https"
        consumes:
          - application/json
        produces:
          - application/json
        paths:
          /project:
            get:
              responses: {}
              security:
                - cognitoUserPool: []
              x-amazon-apigateway-integration:
                uri:
                  - 'arn:aws:apigateway:....Arn'
                passthroughBehavior: "when_no_match"
                httpMethod: "POST"
                type: "aws_proxy"

GetAllProjectsFunction:
  Type: 'AWS::Serverless::Function'
  Properties:
    CodeUri: URI/
    Handler: index.handler
    Runtime: nodejs8.10
    MemorySize: 128
    Timeout: 30
    Role: 'arn:....role'
    Events:
    GetAllProjects:
      Type: Api
      Properties:
        Path: /project
        Method: get
        RestApiId: !Ref GRApi
Outputs: 
   ...
...