google-cloud-storage 1.2.0 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 474743d603eb149e305fbbbaf7db863b04806cc0
|
4
|
+
data.tar.gz: f8eb5c36d9816604516c4c0d91c5350ba5152c76
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e75929f212d3cea1b8b7064136ff2a6228571358225e1980ba5f46d982a31dc212d50cda1d59d117356c8429388b89d40502352f7020c7578a40e5361dc4ba82
|
7
|
+
data.tar.gz: ebd0b51233c64e48728850b2eb0a0e5ad4699486e0bc8a12d7be442b34092e7c73419051c857dabd4a23b6693da1a0d3bf9e2e3287e61df2a5bc9d0a523d16d4
|
@@ -733,6 +733,14 @@ module Google
|
|
733
733
|
# Private Key.
|
734
734
|
# @param [OpenSSL::PKey::RSA, String] private_key Service Account's
|
735
735
|
# Private Key.
|
736
|
+
# @param [Hash] query Query string parameters to include in the signed
|
737
|
+
# URL. The given parameters are not verified by the signature.
|
738
|
+
#
|
739
|
+
# Parameters such as `response-content-disposition` and
|
740
|
+
# `response-content-type` can alter the behavior of the response when
|
741
|
+
# using the URL, but only when the file resource is missing the
|
742
|
+
# corresponding values. (These values can be permanently set using
|
743
|
+
# {File#content_disposition=} and {File#content_type=}.)
|
736
744
|
#
|
737
745
|
# @example
|
738
746
|
# require "google/cloud/storage"
|
@@ -778,14 +786,16 @@ module Google
|
|
778
786
|
#
|
779
787
|
def signed_url path, method: nil, expires: nil, content_type: nil,
|
780
788
|
content_md5: nil, headers: nil, issuer: nil,
|
781
|
-
client_email: nil, signing_key: nil, private_key: nil
|
789
|
+
client_email: nil, signing_key: nil, private_key: nil,
|
790
|
+
query: nil
|
782
791
|
ensure_service!
|
783
|
-
options = { method: method, expires: expires, headers: headers,
|
784
|
-
content_type: content_type, content_md5: content_md5,
|
785
|
-
issuer: issuer, client_email: client_email,
|
786
|
-
signing_key: signing_key, private_key: private_key }
|
787
792
|
signer = File::Signer.from_bucket self, path
|
788
|
-
signer.signed_url
|
793
|
+
signer.signed_url method: method, expires: expires, headers: headers,
|
794
|
+
content_type: content_type,
|
795
|
+
content_md5: content_md5, issuer: issuer,
|
796
|
+
client_email: client_email,
|
797
|
+
signing_key: signing_key, private_key: private_key,
|
798
|
+
query: query
|
789
799
|
end
|
790
800
|
|
791
801
|
##
|
@@ -731,6 +731,14 @@ module Google
|
|
731
731
|
# Private Key.
|
732
732
|
# @param [OpenSSL::PKey::RSA, String] private_key Service Account's
|
733
733
|
# Private Key.
|
734
|
+
# @param [Hash] query Query string parameters to include in the signed
|
735
|
+
# URL. The given parameters are not verified by the signature.
|
736
|
+
#
|
737
|
+
# Parameters such as `response-content-disposition` and
|
738
|
+
# `response-content-type` can alter the behavior of the response when
|
739
|
+
# using the URL, but only when the file resource is missing the
|
740
|
+
# corresponding values. (These values can be permanently set using
|
741
|
+
# {#content_disposition=} and {#content_type=}.)
|
734
742
|
#
|
735
743
|
# @example
|
736
744
|
# require "google/cloud/storage"
|
@@ -778,14 +786,16 @@ module Google
|
|
778
786
|
#
|
779
787
|
def signed_url method: nil, expires: nil, content_type: nil,
|
780
788
|
content_md5: nil, headers: nil, issuer: nil,
|
781
|
-
client_email: nil, signing_key: nil, private_key: nil
|
789
|
+
client_email: nil, signing_key: nil, private_key: nil,
|
790
|
+
query: nil
|
782
791
|
ensure_service!
|
783
792
|
signer = File::Signer.from_file self
|
784
793
|
signer.signed_url method: method, expires: expires, headers: headers,
|
785
794
|
content_type: content_type,
|
786
795
|
content_md5: content_md5,
|
787
796
|
issuer: issuer, client_email: client_email,
|
788
|
-
signing_key: signing_key, private_key: private_key
|
797
|
+
signing_key: signing_key, private_key: private_key,
|
798
|
+
query: query
|
789
799
|
end
|
790
800
|
|
791
801
|
##
|
@@ -109,7 +109,7 @@ module Google
|
|
109
109
|
fail SignedUrlUnavailable unless i && s
|
110
110
|
|
111
111
|
sig = generate_signature s, signature_str(options)
|
112
|
-
generate_signed_url i, sig, options[:expires]
|
112
|
+
generate_signed_url i, sig, options[:expires], options[:query]
|
113
113
|
end
|
114
114
|
|
115
115
|
def generate_signature signing_key, secret
|
@@ -120,10 +120,18 @@ module Google
|
|
120
120
|
Base64.strict_encode64(signature).delete("\n")
|
121
121
|
end
|
122
122
|
|
123
|
-
def generate_signed_url issuer, signed_string, expires
|
124
|
-
"#{ext_url}?GoogleAccessId=#{CGI.escape issuer}" \
|
123
|
+
def generate_signed_url issuer, signed_string, expires, query
|
124
|
+
url = "#{ext_url}?GoogleAccessId=#{CGI.escape issuer}" \
|
125
125
|
"&Expires=#{expires}" \
|
126
126
|
"&Signature=#{CGI.escape signed_string}"
|
127
|
+
|
128
|
+
if query
|
129
|
+
query.each do |name, value|
|
130
|
+
url << "&#{CGI.escape name}=#{CGI.escape value}"
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
url
|
127
135
|
end
|
128
136
|
|
129
137
|
def format_extension_headers headers
|
@@ -375,6 +375,14 @@ module Google
|
|
375
375
|
# Private Key.
|
376
376
|
# @param [OpenSSL::PKey::RSA, String] private_key Service Account's
|
377
377
|
# Private Key.
|
378
|
+
# @param [Hash] query Query string parameters to include in the signed
|
379
|
+
# URL. The given parameters are not verified by the signature.
|
380
|
+
#
|
381
|
+
# Parameters such as `response-content-disposition` and
|
382
|
+
# `response-content-type` can alter the behavior of the response when
|
383
|
+
# using the URL, but only when the file resource is missing the
|
384
|
+
# corresponding values. (These values can be permanently set using
|
385
|
+
# {File#content_disposition=} and {File#content_type=}.)
|
378
386
|
#
|
379
387
|
# @example
|
380
388
|
# require "google/cloud/storage"
|
@@ -426,13 +434,14 @@ module Google
|
|
426
434
|
def signed_url bucket, path, method: nil, expires: nil,
|
427
435
|
content_type: nil, content_md5: nil, headers: nil,
|
428
436
|
issuer: nil, client_email: nil, signing_key: nil,
|
429
|
-
private_key: nil
|
437
|
+
private_key: nil, query: nil
|
430
438
|
signer = File::Signer.new bucket, path, service
|
431
439
|
signer.signed_url method: method, expires: expires, headers: headers,
|
432
440
|
content_type: content_type,
|
433
441
|
content_md5: content_md5,
|
434
442
|
issuer: issuer, client_email: client_email,
|
435
|
-
signing_key: signing_key, private_key: private_key
|
443
|
+
signing_key: signing_key, private_key: private_key,
|
444
|
+
query: query
|
436
445
|
end
|
437
446
|
|
438
447
|
protected
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-storage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Moore
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-07-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: google-cloud-core
|