Как защитить (белый список) только 1 конечную точку шлюза API AWS через Serverless Framework? - PullRequest
0 голосов
/ 04 апреля 2020

Я использую Serverless Framework для создания шлюза API AWS.

У меня есть 10 конечных точек в этом API. Я хочу защитить только 1 конечную точку с помощью белого списка. Я слежу за этим постом , но безуспешно.

Это то, что у меня есть в serverless.yml:

resourcePolicy:
    - Effect: Allow
      Principal: '*'
      Action: execute-api:Invoke
      Resource:
        - "arn:aws:execute-api:${file(env.yml):${self:provider.stage}.region}:1111:1gfa5/${self:provider.stage}/POST/${file(env.yml):COMPANY_NAME}/pets"
      Condition:
        IpAddress:
          aws:SourceIp:
            - '11.11.111.238'
            - '99.777.666.94'

Когда я запускаю sls print --stage dev I можно увидеть:

Resource:
        - >-
          arn:aws:execute-api:us-west-2:1111:1gfa5/dev/POST/myComp/pets
      Condition:
        IpAddress:
          'aws:SourceIp':
            - '11.11.111.238'
            - '99.777.666.94'

Затем я развертываю и защищаю все конечные точки с помощью белого списка, а не только POST/myComp/pets.

Чего мне не хватает?

...