Обновить Apikey для метода в Api gateway? - PullRequest
0 голосов
/ 24 октября 2018

Usecase

Как я могу обновить ключи API в apigateway?Означает, что при развертывании CFN Stack я создал API key для метода (то есть adbickyda).Через некоторое время мне нужно заменить API key на новый (то есть asdfasfdj).

Возможно ли это?Я проверил метод apikey:update, но кроме apikey у них есть опции обновления для всех (например, имя, описание и т. Д.)

Спасибо Любая помощь приветствуется

1 Ответ

0 голосов
/ 25 октября 2018

Я считаю, что ваш ключ API связан с usage plan, который связан с API stage.например, это то, что у меня есть в моем сценарии CFN.

ApiUsagePlan:
  Type: "AWS::ApiGateway::UsagePlan"
  Properties:
    ApiStages: 
    - ApiId: !Ref MsApi
      Stage: !Ref TestStage     
    Description: !Join [" ", [{"Ref": "AWS::StackName"}, "usage plan"]]
    Quota:
      Limit: 2000
      Period: MONTH
    Throttle:
    BurstLimit: 10
    RateLimit: 10
    UsagePlanName: !Join ["", [{"Ref": "AWS::StackName"}, "-usage-plan"]]
ApiUsagePlanKey:
  Type: "AWS::ApiGateway::UsagePlanKey"
  Properties:
    KeyId: !Ref ApiKey
    KeyType: API_KEY
    UsagePlanId: !Ref ApiUsagePlan

Я думаю, вам придется добавить еще API key к usage plan и затем удалить старую API key.Я не уверен, возможно ли все это с помощью сценариев CFN, но вы, безусловно, можете использовать функциональность Пользовательский ресурс CFN для вызова лямбда-функции, которая делает это.Дайте мне знать, если это работает.

...