workato-connector-sdk 1.3.6 → 1.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/lib/workato/connector/sdk/dsl/workato_package.rb +4 -0
- data/lib/workato/connector/sdk/request.rb +16 -4
- data/lib/workato/extension/string.rb +17 -0
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 49aa4824f123bf7b6601d8b2a341fee4c06f2b51142ddbcb6a86d59199018265
|
|
4
|
+
data.tar.gz: be9fedf954b6dac11edd5b41458b5a8a649e388e4407ee044521912e9eccbfd5
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 56a7885ec1f441f2df917eebb703632825c3a978252d25cbb74ad683c41c9a2ca9625cec83f7a9dadb2b8a046f7da5d3ff8445ec192118c15ad208f653d6e23d
|
|
7
|
+
data.tar.gz: 0262d744fcc2c96fa6bf602ebd0c18b0b52165833e66a93b52dea7cdbd5d1c7c5e6b6731aa9c029369738634f1f0f4426866637b577af486fc33075ac0470df5
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.3.
|
|
1
|
+
1.3.7
|
|
@@ -102,6 +102,8 @@ module Workato
|
|
|
102
102
|
raise Sdk::ArgumentError, 'Mismatched algorithm and key'
|
|
103
103
|
rescue OpenSSL::PKey::PKeyError
|
|
104
104
|
raise Sdk::ArgumentError, 'Invalid key'
|
|
105
|
+
rescue JWT::VerificationError
|
|
106
|
+
raise Sdk::ArgumentError, 'Invalid signature'
|
|
105
107
|
end
|
|
106
108
|
|
|
107
109
|
def verify_rsa(payload, certificate, signature, algorithm = 'SHA256')
|
|
@@ -172,6 +174,8 @@ module Workato
|
|
|
172
174
|
cipher.key = key
|
|
173
175
|
cipher.iv = init_vector if init_vector.present?
|
|
174
176
|
Types::Binary.new(cipher.update(string) + cipher.final)
|
|
177
|
+
rescue OpenSSL::Cipher::CipherError => e
|
|
178
|
+
raise Sdk::ArgumentError, e.message
|
|
175
179
|
end
|
|
176
180
|
|
|
177
181
|
def pbkdf2_hmac_sha1(string, salt, iterations = 1000, key_len = 16)
|
|
@@ -30,9 +30,9 @@ module Workato
|
|
|
30
30
|
@action = action
|
|
31
31
|
@headers = {}
|
|
32
32
|
@case_sensitive_headers = {}
|
|
33
|
-
@render_request =
|
|
34
|
-
@parse_response =
|
|
35
|
-
@after_response =
|
|
33
|
+
@render_request = DEFAULT_RENDER_REQUEST
|
|
34
|
+
@parse_response = DEFAULT_PARSE_RESPONSE
|
|
35
|
+
@after_response = DEFAULT_AFTER_RESPONSE
|
|
36
36
|
@callstack_before_request = Array.wrap(Kernel.caller)
|
|
37
37
|
end
|
|
38
38
|
|
|
@@ -90,7 +90,10 @@ module Workato
|
|
|
90
90
|
else
|
|
91
91
|
@payload = payload
|
|
92
92
|
end
|
|
93
|
-
|
|
93
|
+
if Kernel.block_given?
|
|
94
|
+
@payload ||= ActiveSupport::HashWithIndifferentAccess.new
|
|
95
|
+
yield(@payload)
|
|
96
|
+
end
|
|
94
97
|
self
|
|
95
98
|
end
|
|
96
99
|
|
|
@@ -254,6 +257,15 @@ module Workato
|
|
|
254
257
|
|
|
255
258
|
private
|
|
256
259
|
|
|
260
|
+
DEFAULT_RENDER_REQUEST = ->(_) {}
|
|
261
|
+
private_constant :DEFAULT_RENDER_REQUEST
|
|
262
|
+
|
|
263
|
+
DEFAULT_PARSE_RESPONSE = ->(payload) { payload }
|
|
264
|
+
private_constant :DEFAULT_PARSE_RESPONSE
|
|
265
|
+
|
|
266
|
+
DEFAULT_AFTER_RESPONSE = ->(_response_code, parsed_response, _response_headers) { parsed_response }
|
|
267
|
+
private_constant :DEFAULT_AFTER_RESPONSE
|
|
268
|
+
|
|
257
269
|
attr_reader :method
|
|
258
270
|
|
|
259
271
|
def response
|
|
@@ -143,6 +143,15 @@ module Workato
|
|
|
143
143
|
Types::Binary.new(::Digest::SHA256.digest(self))
|
|
144
144
|
end
|
|
145
145
|
|
|
146
|
+
def encode_sha512
|
|
147
|
+
Types::Binary.new(::Digest::SHA512.digest(self))
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
def encode_sha512_256 # rubocop:disable Naming/VariableNumber
|
|
151
|
+
digest = ::OpenSSL::Digest.new('sha512-256', self)
|
|
152
|
+
Types::Binary.new(digest.to_s)
|
|
153
|
+
end
|
|
154
|
+
|
|
146
155
|
def hmac_sha256(key)
|
|
147
156
|
digest = ::OpenSSL::Digest.new('sha256')
|
|
148
157
|
Types::Binary.new(::OpenSSL::HMAC.digest(digest, key, self))
|
|
@@ -159,6 +168,14 @@ module Workato
|
|
|
159
168
|
Types::Binary.new(private_key.sign(digest, self))
|
|
160
169
|
end
|
|
161
170
|
|
|
171
|
+
def rsa_sha512(key)
|
|
172
|
+
digest = ::OpenSSL::Digest.new('sha512')
|
|
173
|
+
private_key = ::OpenSSL::PKey::RSA.new(key)
|
|
174
|
+
Types::Binary.new(private_key.sign(digest, self))
|
|
175
|
+
rescue OpenSSL::PKey::RSAError => e
|
|
176
|
+
Kernel.raise(Workato::Connector::Sdk::ArgumentError, e.message)
|
|
177
|
+
end
|
|
178
|
+
|
|
162
179
|
def md5_hexdigest
|
|
163
180
|
::Digest::MD5.hexdigest(self)
|
|
164
181
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: workato-connector-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.3.
|
|
4
|
+
version: 1.3.7
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Pavel Abolmasov
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-
|
|
11
|
+
date: 2023-10-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activesupport
|
|
@@ -439,7 +439,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
439
439
|
- !ruby/object:Gem::Version
|
|
440
440
|
version: '0'
|
|
441
441
|
requirements: []
|
|
442
|
-
rubygems_version: 3.
|
|
442
|
+
rubygems_version: 3.4.10
|
|
443
443
|
signing_key:
|
|
444
444
|
specification_version: 4
|
|
445
445
|
summary: Gem for running adapter's code outside Workato infrastructure
|