#opensearch #aws #sig-v4

bin+lib aoss-curl

Request to Amazon OpenSearch Service with SigV4 🔏

48 releases (21 stable)

1.0.20 Oct 26, 2024
1.0.17 Aug 8, 2024
1.0.16 Jul 9, 2024
1.0.13 Mar 19, 2024
0.1.12 Nov 29, 2022

#751 in Command line utilities

Download history 233/week @ 2024-07-29 118/week @ 2024-08-05 15/week @ 2024-08-12 36/week @ 2024-09-23 185/week @ 2024-10-14 277/week @ 2024-10-21 25/week @ 2024-10-28 41/week @ 2024-11-04

528 downloads per month

MIT license

23KB
454 lines

aoss-curl

Version Downloads License Build Release

Request to Amazon OpenSearch Service with SigV4 🔏

 aoss-curl
Request to Amazon OpenSearch Service with SigV4 🔏

Usage: aoss-curl <COMMAND>

Commands:
  no-auth  Request to Amazon OpenSearch Service with SigV4
  aws-mfa  Request to Amazon OpenSearch Service with SigV4 and aws-mfa
  help     Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

Installation

aoss-curl is published on crates.io and can be installed with

cargo install aoss-curl

or via homebrew-tap with

brew install jhandguy/tap/aoss-curl

or downloaded as binary from the releases page.

Usage

no-auth

Run the aoss-curl no-auth command:

aoss-curl no-auth -u <opensearch_domain>/_cat/indices
200 OK
green ...

aws-mfa

aws-mfa can be used for authenticating to AWS with MFA before requesting to Amazon OpenSearch Service.

Config and credentials files

Add default region in ~/.aws/config:

[profile <profile_name>-noauth]
region = <aws_region>

[profile <profile_name>]
region = <aws_region>

Add basic credentials in ~/.aws/credentials:

[<profile_name>-noauth]
aws_access_key_id = <aws_access_key_id>
aws_secret_access_key = <aws_secret_access_key>

Note: make sure to add the -noauth suffix to the profile name

Run the aoss-curl aws-mfa file command:

aoss-curl aws-mfa file -p <profile_name> -c <mfa_code> -u <opensearch_domain>/_cat/indices
200 OK
green ...

Environment variables

Export default region and basic credentials as environment variables:

export AWS_REGION=<aws_region>
export AWS_ACCESS_KEY_ID=<aws_access_key_id>
export AWS_SECRET_ACCESS_KEY=<aws_secret_access_key>

Run the aoss-curl aws-mfa env command:

aoss-curl aws-mfa env -c <mfa_code> -u <opensearch_domain>/_cat/indices
200 OK
green ...

Dependencies

~24–34MB
~619K SLoC