Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

549
Visualizações
¿Sintaxis correcta para actualizar la política de recursos de AWS API Gateway a través de la CLI?

Estoy intentando actualizar una política de recursos en mi instancia de API Gateway a través de la CLI y parece que no puedo encontrar la sintaxis correcta para el JSON. En la documentación dice usar "operaciones de parches" y, por lo que entiendo, necesita una cadena de JSON para la política. Probé JSON minimizado, JSON escapado, comillas simples, sin comillas, y nada parece funcionar. La documentación no tiene un ejemplo de JSON real en el campo de valor para las operaciones de parche, por lo que me siento un poco perdido.

He estado probando variaciones de este comando:

aws apigateway update-rest-api --rest-api-id abcde123 --patch-operations op=replace,path=/policy,value='{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":"*","Action":"execute-api:Invoke","Resource":"arn:aws:execute-api:region:000000000000:*"},{"Effect":"Deny","Principal":"*","Action":"execute-api:Invoke","Resource":"arn:aws:execute-api:region:000000000000:*","Condition":{"StringNotEquals":{"aws:SourceVpce":["vpce-123456789","vpce-987654321"]}}}]}'

Me sale un error cada vez que dice:

Error parsing parameter '--patch-operations': Expected: '=', received: '{' for input:

Documentación pertinente aquí .

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

El siguiente comando ha sido probado en mi entorno - (usando bash)

 aws apigateway update-rest-api --rest-api-id %REST_API_ID% --patch-operations op=replace,path=/policy,value='"{\"Version \":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":\"*\",\"Action\":\"execute-api:Invoke\",\"Resource \":\"arn:aws:execute-api:region:000000000000:*\"},{\"Effect\":\"Deny\",\"Principal\":\"*\",\"Action\":\"execute-api:Inv oke\",\"Resource\":\"arn:aws:execute-api:region:000000000000:*\",\"Condition\":{\"StringNotEquals\":{\"aws:SourceVpce\" :[\"vpce-123456789\",\"vpce-987654321\"]}}}]}"' --region %REGION%

ingrese la descripción de la imagen aquí

La clave es convertir el objeto JSON en texto en cadena, he usado este sitio . Básicamente, pegue su JSON en el cuadro de texto de entrada y copie el texto en cadena en el comando AWS CLI.

Más información aquí .

over 4 years ago · Santiago Trujillo Relatório

0

Aquí hay una respuesta para una situación en la que tiene una política en un archivo , por ejemplo, policy.json :

 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "execute-api:Invoke", "Resource": "arn:aws:execute-api:region:000000000000:*" }, { "Effect": "Deny", "Principal": "*", "Action": "execute-api:Invoke", "Resource": "arn:aws:execute-api:region:000000000000:*", "Condition": { "StringNotEquals": { "aws:SourceVpce": [ "vpce-123456789", "vpce-987654321" ] } } } ] }

Luego, usando jq , puedes encadenarlo :

 aws apigateway update-rest-api \ --rest-api-id <api-id> \ --patch-operations op=replace,path=/policy,value=$(jq tostring policy.json)
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda