Module: Aliyun::MTS::Util
- Defined in:
- lib/aliyun/mts/util.rb
Class Method Summary collapse
Class Method Details
.default_params ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/aliyun/mts/util.rb', line 32 def default_params { Format: "JSON", Version: "2014-06-18", AccessKeyId: Aliyun::MTS.access_key_id, SignatureMethod: "HMAC-SHA1", Timestamp: Time.now.utc.iso8601, SignatureVersion: "1.0", SignatureNonce: signature_nonce } end |
.get_signature(params) ⇒ Object
21 22 23 24 25 26 27 28 29 30 |
# File 'lib/aliyun/mts/util.rb', line 21 def get_signature(params) cano_query = params.sort.map { |k, v| [CGI.escape(k.to_s), CGI.escape(v)].join('=') }.join('&') string_to_sign = 'GET&' + CGI.escape('/') + '&' + CGI.escape(cano_query) Base64.strict_encode64( OpenSSL::HMAC.digest('sha1', Aliyun::MTS.access_key_secret + "&", string_to_sign)) end |
.signature_params(params) ⇒ Object
签名后参数
15 16 17 18 19 |
# File 'lib/aliyun/mts/util.rb', line 15 def signature_params(params) params.merge!(default_params) params[:Signature] = get_signature(params) params end |