• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

AWS Execute API

|View as Markdown (English)

Cette page fournit une référence complète pour l'API AWS Execute disponible dans le catalogue des actions d'automatisation de workflow. Ces actions vous permettent d'exécuter toute opération d'API AWS.

Prérequis

Pour les prérequis et la configuration des identifiants, consultez Configurer les identifiants AWS.

configurationde la sécurité et d'IAM

Pour utiliser cette action, vous devez configurer les identifiants AWS. Consultez Configurer les identifiants AWS pour des instructions détaillées sur la création d'un rôle IAM ou d'un utilisateur IAM.

Important

Bonnes pratiques de sécurité : lors de la définition des politiques IAM pour cette action, utilisez toujours le principe du moindre privilège. N’accordez que les actions spécifiques de l’API AWS requises par votre workflow et limitez les autorisations à des ressources spécifiques plutôt que d’utiliser des caractères génériques.

Autorisations IAM requises

Les autorisations dont vous avez besoin dépendent des services AWS et des API que votre workflow appelle. Utilisez les exemples ci-dessous comme modèles pour créer des politiques de moindre privilège.

Exemple 1 : Envoyer des messages à une file d'attente SQS spécifique

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:us-west-2:<your-aws-account-id>:<your-queue-name>"
}
]
}

Exemples 2 : Interroger une table DynamoDB spécifique

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "dynamodb:Query",
"Resource": "arn:aws:dynamodb:us-west-2:<your-aws-account-id>:table/<your-table-name>"
}
]
}

Exemple 3 : Plusieurs services avec des autorisations spécifiques

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:us-west-2:<your-aws-account-id>:<your-queue-name>"
},
{
"Effect": "Allow",
"Action": "dynamodb:Query",
"Resource": "arn:aws:dynamodb:us-west-2:<your-aws-account-id>:table/<your-table-name>"
}
]
}

Pour plus d'informations sur le fonctionnement de cette action, consultez la documentation AWS système Manager executeAwsApi.

Exécuter une API AWS

Exécutez n'importe quelle opération d'API AWS pour un service spécifié. Il prend en charge la fourniture d'informations d'identification AWS, de la région, du nom du service, du nom de l'API et de paramètres facultatifs. L'action peut renvoyer des sorties telles que l'état de réussite, les données de réponse et les messages d'erreur, ce qui la rend polyvalente pour interagir avec les services AWS par programmation.

Saisir

Type

Exemple

awsRoleArn

Facultatif.

Chaîne

arn:aws:iam::123456789012:role/my-workflow-role

awsAccessKeyId

Facultatif.

Chaîne

${{ :secrets:<awsAccessKeyId> }}

awsSecretAccessKey

Facultatif.

Chaîne

${{ :secrets:<awsSecretAccessKey> }}

awsSessionToken

Facultatif.

Chaîne

${{ :secrets:<awsSessionToken> }}

région

Obligatoire.

Chaîne

region: "us-east-2"

service

Obligatoire.

Chaîne

service: "sqs"

Services AWS disponibles

API

Obligatoire.

Chaîne

api: "create_queue"

paramètres

Obligatoire.

Mappage

parameters: {
"QueueName": "dks-testing-queue",
"Attributes": {
"DelaySeconds": "0",
"MessageRetentionPeriod": "86400"
}
}

selectors

Facultatif.

Liste

[{\"name\": \"response\", \"expression\": \".response\"}, {\"name\": \"success\", \"expression\": \".success\"}, {\"name\": \"errorMessage\", \"expression\": \".errorMessage\"}]

Sortir

Type

Exemple

response

Objet

{"response":<aws api reponse>}

- chaque service et API ont une réponse différente, par exemple, voir la

réponse de la requête DynamoDB

.

success

Booléen

success: true | false

errorMessage

Chaîne

errorMessage: "User does not have permission to query DynamoDB"

Important

  • Au moins une des informations d'identification AWS (courte, longue, rôle) doit être fournie, le rôle étant prioritaire sur les autres.
  • Dans l'entrée d'action, si awsAccessKeyId et awsSecretAccessKey doivent être fournis, assurez-vous qu'il s'agit d'informations d'identification statiques d'un utilisateur IAM.
  • Si des informations d'identification de session doivent être utilisées, awsAccessKeyId, awsSecretAccessKey et awsSessionToken doivent être transmises à l'entrée d'action.
  • Reportez-vous aux identifiants AWS pour obtenir des instructions.
  • Utilisez des sélecteurs pour obtenir uniquement les paramètres spécifiés en sortie.

Exemple : Interroger une table DynamoDB

Cet exemple montre comment interroger une table DynamoDB en utilisant l'action aws.execute.api avec des informations d'identification de session.

name: aws_execute_api_dynamoDB_dks
workflowInputs:
key:
type: String
defaultValue: "${{ :secrets:<aws_access_key_id> }}"
access:
type: String
defaultValue: "${{ :secrets:<aws_secret_access_key? }}"
token:
type: String
defaultValue: "${{ :secrets:<aws_session_token> }}"
region:
type: String
defaultValue: us-east-2
tableName:
type: String
defaultValue: workflow-definitions-dev
scopedName:
type: String
version:
type: String
defaultValue: "1"
steps:
- name: executeApi
type: action
action: aws.execute.api
version: 1
inputs:
awsAccessKeyId: ${{ .workflowInputs.key }}
awsSecretAccessKey: ${{ .workflowInputs.access }}
awsSessionToken: ${{ .workflowInputs.token }}
region: ${{ .workflowInputs.region }}
service: dynamodb
api: query
parameters:
TableName: ${{ .workflowInputs.tableName }}
KeyConditionExpression: "ScopedName = :scopedNameValue AND Version = :VersionValue"
ExpressionAttributeValues:
":scopedNameValue":
S: ${{ .workflowInputs.scopedName }}
":VersionValue":
N: ${{ .workflowInputs.version }}
selectors:
- name: response
expression: '.response'
- name: errorMessage
expression: '.errorMessage'
- name: success
expression: '.success'
- name: wait
type: wait
seconds: 2
- name: logOutput
type: action
action: newrelic.instrumentation.log
version: 1
inputs:
message: 'The execute API message output is:${{ .steps.executeApi.outputs.response.Item }}'
licenseKey: '${{ :secrets:STAGING_NEW_RELIC_LICENSE_KEY }}'
- name: logOutput1
type: action
action: newrelic.instrumentation.log
version: 1
inputs:
message: 'does execute API have any error :${{ .steps.executeApi.outputs.errorMessage }}'
licenseKey: '${{ :secrets:STAGING_NEW_RELIC_LICENSE_KEY }}'
- name: logOutput2
type: action
action: newrelic.instrumentation.log
version: 1
inputs:
message: 'is execute successful :${{ .steps.executeApi.outputs.success }}'
licenseKey: '${{ :secrets:STAGING_NEW_RELIC_LICENSE_KEY }}'

Pour plus d'exemples de workflow utilisant AWS Execute API, consultez la page Exemples de workflow.

Droits d'auteur © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.