Skip to content

aws sesv2 put-account-details --website-url https://example.com shouldn't download the contents of example.com #5641

Description

@ankon

Confirm by changing [ ] to [x] below to ensure that it's a bug:

Describe the bug

I'm trying to use the CLI to move my SES region out of the sandbox.

aws --debug sesv2 put-account-details --production-access-enabled --mail-type TRANSACTIONAL --website-url "https://example.com" --use-case-description "..." --contact-language EN

This produces a very odd message:

An error occurred (BadRequestException) when calling the PutAccountDetails operation: 2 validation errors detected: Value at 'websiteURL' failed to satisfy constraint: Member must satisfy regular expression pattern: ^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?; Value at 'websiteURL' failed to satisfy constraint: Member must have length less than or equal to 1000

Using --debug shows that it actually queryied my URL:

2020-10-15 15:51:55,756 - MainThread - botocore.hooks - DEBUG - Changing event name from load-cli-arg.email.put-account-details.website-url to load-cli-arg.ses.put-account-details.website-url
2020-10-15 15:51:55,756 - MainThread - botocore.hooks - DEBUG - Event load-cli-arg.ses.put-account-details.website-url: calling handler <awscli.paramfile.URIArgumentHandler object at 0x7f06e95e3940>
2020-10-15 15:51:55,757 - MainThread - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): example.com:443
2020-10-15 15:51:55,836 - MainThread - urllib3.connectionpool - DEBUG - https://example.com:443 "GET / HTTP/1.1" 200 1454225
[...]

SDK version number
aws-cli/1.18.157 Python/3.8.6 Linux/5.8.11-200.fc32.x86_64 botocore/1.18.16

Platform/OS/Hardware/Device
Fedora 32, amd64

Additional context

This looks similar to #1130, so I suspect the correct fix is to modify https://github.com/aws/aws-cli/blob/develop/awscli/paramfile.py accordingly for this parameter.

A work-around: I couldn't find a way to quote this in a way that would disable the downloading, BUT the regexp points to the solution: Remove the https:// and use --website-url example.com.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugThis issue is a bug.pr:needs-reviewThis PR needs a review from a Member.sesv2

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions