AWS Signature Version 4

AWS Signature Version 4 (ODC)

Stable version 1.0.0 (Compatible with ODC)
Uploaded on 02 April 2024 by OutSystems Labs
AWS Signature Version 4

AWS Signature Version 4 (ODC)

Documentation
1.0.0

Signature Version 4 (SigV4) is the process of adding authentication information to AWS API requests sent by HTTP. For security, most requests to AWS must be signed with an access key. The access key consists of an access key ID and secret access key, commonly referred to as your security credentials. You can find more about SigV4 in the official documentation.

Instructions - Get your AWS Keys:

Get your AWS Access Key ID and Secret Access Key. More about it here.

Instructions - Add SigV4 to your application/library.

Go to "Add Public Elements", and select the SigV4 action from the SigV4 library.



Instructions - Set up your AWS Credentials.

In the Portal, define the values for the Access Key ID and Secret Access Key settings.



Instructions - Sign the Request

In order to sign your REST request, you need to get access to its content. Therefore, create an OnBeforeRequest action on your request.

There, call the SignRequest Action. You'll need to fill the parameters accordingly:

  • Service - the Service you're invoking, e.g., "lambda", "execute-api". This can usually be seen in the REST endpoint you're calling

  • Region - the Region where your service is hosted, e.g. "us-east-1". This can usually be seen in the REST endpoint you're calling.

  • Content-Type - by default, the content type is "application/json". Fill it only when it's different.

  • RequestBaseURL - the BaseURL of your request.

  • RequestURLPath - the URL path of your request

  • RequestURLQueryParameters - the Query Parameters of your request

  • RequestHTTPMethod - the HTTPMethod of your request.

  • RequestText - the Request Text of your request.


Note: most of the request properties come directly from the request variable you have access to.




Instructions - Append Headers to Request

The SignRequest action will provide headers that need to be added to the customized request.