AWS CLI and Tools
All AWS tools communicate with Simfra the same way they communicate with real AWS - over HTTPS with SigV4-signed requests. The only difference is the endpoint URL.
AWS CLI
Environment variables (recommended)
export AWS_ENDPOINT_URL=http://localhost:4599
export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_DEFAULT_REGION=us-east-1
export AWS_S3_USE_PATH_STYLE=true
AWS_ENDPOINT_URL routes all service requests to Simfra. AWS_S3_USE_PATH_STYLE enables path-style S3 addressing (required on localhost). No per-service endpoint configuration is needed.
AWS CLI profile
Add to ~/.aws/config:
[profile simfra]
endpoint_url = http://localhost:4599
region = us-east-1
And to ~/.aws/credentials:
[simfra]
aws_access_key_id = AKIAIOSFODNN7EXAMPLE
aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Then use --profile simfra or export AWS_PROFILE=simfra.
S3 path style
For S3 operations, path-style addressing is required since Simfra runs on localhost:
aws s3api list-buckets # works as-is
aws s3 ls # works as-is
If you encounter virtual-hosted-style issues, set:
aws configure set default.s3.addressing_style path
curl
Simfra requires SigV4-signed requests. Use the --aws-sigv4 flag (curl 7.75+):
curl http://localhost:4599/ \
--aws-sigv4 "aws:amz:us-east-1:sqs" \
--user "AKIAIOSFODNN7EXAMPLE:wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "Action=ListQueues"
AWS SDKs
All AWS SDKs support custom endpoints. Set the AWS_ENDPOINT_URL environment variable and the SDK will route all requests to Simfra automatically.
For SDK-specific configuration (per-service endpoints, retry settings, etc.), see the SDK Configuration guide.
httpie
http --auth-type aws \
--auth "AKIAIOSFODNN7EXAMPLE:wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
http://localhost:4599/ \
Action==ListQueues
Requires the httpie-aws-auth plugin: pip install httpie-aws-auth.
Postman
- Set the request URL to
http://localhost:4599 - Under Authorization, select AWS Signature
- Enter the access key, secret key, region (
us-east-1), and service name - Postman handles SigV4 signing automatically
Next Steps
- Credentials - create IAM users and assume roles
- Terraform Quick Start - use Terraform with Simfra