Skip to content

"signurl" is ignoring "use_https" and other configuration settings #666

@jamshid

Description

@jamshid

Seems the url generated by signurl should use the endpoint style described in ~/.s3cfg. In particular:

  • use https if use_https = True
  • put the bucket name in the path, not the domain/endpoint, if host_bucket == host_base
$ s3cmd --version   # installed with "brew install --HEAD s3cmd"
s3cmd version 1.6.0+
$ s3cmd signurl s3://mybucket/file.mp4 +3600
http://mybucket.storage.example.com/file.mp4?AWSAccessKeyId=1e71169c9ab10b293bda2b454bf20c35&Expires=1448001252&Signature=xcJUwTgRq5xSvTXp3K3zI3v%2Fq7g%3D

Expected:

https://storage.example.com/mybucket/file.mp4?AWSAccessKeyId=1e71169c9ab10b293bda2b454bf20c35&Expires=1448001252&Signature=xcJUwTgRq5xSvTXp3K3zI3v%2Fq7g%3D

Actual requests work fine: s3cmd uses https://storage.example.com. I'm using an S3-compatible service, here's my ~/.s3cfg:

[default]
access_key = 1e71169c9ab10b293bda2b454bf20c35
secret_key = secret
use_https = True
host_base = storage.example.com
# Using first format to force "bucket in path not Host:"
host_bucket = storage.example.com
#host_bucket = %(bucket)s.storage.example.com

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions