instance method
Gem::S3URISigner#generate_canonical_query_params
generate_canonical_query_params(s3_config, date_time, credential_info, expiration)
lib/rubygems/s3_uri_signer.rb
View on GitHub ↗
# File tmp/rubies/ruby-4.0.0/lib/rubygems/s3_uri_signer.rb, line 64
def generate_canonical_query_params(s3_config, date_time, credential_info, expiration)
canonical_params = {}
canonical_params["X-Amz-Algorithm"] = "AWS4-HMAC-SHA256"
canonical_params["X-Amz-Credential"] = "#{s3_config.access_key_id}/#{credential_info}"
canonical_params["X-Amz-Date"] = date_time
canonical_params["X-Amz-Expires"] = expiration.to_s
canonical_params["X-Amz-SignedHeaders"] = "host"
canonical_params["X-Amz-Security-Token"] = s3_config.security_token if s3_config.security_token
# Sorting is required to generate proper signature
canonical_params.sort.to_h.map do |key, value|
"#{base64_uri_escape(key)}=#{base64_uri_escape(value)}"
end.join("&")
end
No documentation available
See also
#fetch_s3_config
#generate_canonical_request
#ec2_metadata_token
#generate_signature
also in
4.1 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0