microkit-ruby-sdk 0.1.10 → 0.1.11

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
  SHA256:
3
- metadata.gz: 5d1730cdc763efec6c3774d0a1ad1a46c83dee19c8dde1ab1e37a1539c70f4c0
4
- data.tar.gz: 0252a418af68ee8cfbe36ebf73d36fcca4be42386230f0f280cfac0e1b50f18e
3
+ metadata.gz: 5273f1616cae0d00ef9f6cf17744af23e1e21a374940de32d0235f4ded60723e
4
+ data.tar.gz: 654071429aa46a84d357e2371c4b672514925c4e2c92bda6b6e55b2214c0d308
5
5
  SHA512:
6
- metadata.gz: 34153d489e3af982538d8abae50129c5c680b9f08b3dee5048c596524a1f54365be04ac1ac079c9e858609d303e82f0b16592b7706a5aada428d353ff538cbc2
7
- data.tar.gz: 066f6a7769ceb26baf3d0402802a367a1889c6237834cdb4aa840dad9adaef8c79c0004aefc93654aea2601f862aea005f1764c2662eba7570772e5f2a651bbe
6
+ metadata.gz: 0cfd1cf85d2e34b57e6f2313756410f54de408f48ae85c782fb8aed3254df34c3f83835ada74b616f01b5d7f5eb183a959573510e1723df7cb50c562eed3dc0f
7
+ data.tar.gz: 37793c7be0cefed4be757c323190558284e967d94c7aae032e8a6d278caad8fa7f6a2826a380d26f393a3d46c3866f04c7900a638f48f737b32573c424602844
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- microkit-ruby-sdk (0.1.0)
4
+ microkit-ruby-sdk (0.1.10)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -18,14 +18,14 @@ module Microkit
18
18
  # Microkit.instance.features_kit = Group('features', res["features"] if 'features' in res and type(res["features"]) == dict else {})
19
19
  res = NetworkController.instance.get_latest_data('init')
20
20
  res = JSON.parse(res)
21
- config = JSON.parse(self.decrypt(res["config"], secret))
21
+ config = JSON.parse(self.decrypt(self.clean_base64_padding(res["config"]), secret))
22
22
  Config.instance.set("key_vars_values", res["key_vars_values"])
23
23
  Microkit.instance.instance_variable_set("@config_kit", Group.new("config", config))
24
24
  Microkit.instance.instance_variable_set("@features_kit", Group.new("features", res["features"]))
25
- Microkit.instance.instance_variable_set("@permit", Permit.new(config))
25
+ Microkit.instance.instance_variable_set("@permissions_kit", Permit.new(Config.instance))
26
26
  Microkit.instance.class.module_eval { attr_accessor :config_kit}
27
27
  Microkit.instance.class.module_eval { attr_accessor :features_kit}
28
- Microkit.instance.class.module_eval { attr_accessor :permit}
28
+ Microkit.instance.class.module_eval { attr_accessor :permissions_kit}
29
29
  published = Proc.new do |current_val, prev_val|
30
30
  res = JSON.parse(current_val)
31
31
  config = JSON.parse(self.decrypt(res["config"], secret))
@@ -61,6 +61,9 @@ module Microkit
61
61
  decrypted = cipher.update(encrypted) + cipher.final
62
62
  return decrypted
63
63
  end
64
+ def self.clean_base64_padding(base64_string)
65
+ base64_string.end_with?("==") ? base64_string[0..-3] : base64_string
66
+ end
64
67
  class Microkit
65
68
  include Singleton
66
69
  attr_accessor :subscription
@@ -0,0 +1,26 @@
1
+
2
+ module Microkit
3
+ class Permit
4
+ def initialize(config)
5
+ @config = config
6
+ end
7
+
8
+ def permit(method, path, role, data = {})
9
+ project_id = @config.get('key_vars_values')['project_id']
10
+ service = @config.get('service') || ''
11
+
12
+ params = {
13
+ 'project_id' => project_id,
14
+ 'method' => method,
15
+ 'path' => path,
16
+ 'role' => role,
17
+ 'data' => data,
18
+ 'service' => service
19
+ }
20
+
21
+ res = HttpClient.instance.post('check_permissions', 'permit', params)
22
+ res = JSON.parse(res.to_s, symbolize_names: true)
23
+ res[:permit] || false
24
+ end
25
+ end
26
+ end
@@ -1,3 +1,3 @@
1
1
  module Microkit
2
- VERSION = "0.1.10"
2
+ VERSION = "0.1.11"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: microkit-ruby-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.10
4
+ version: 0.1.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - chaimvaid
@@ -77,6 +77,7 @@ files:
77
77
  - lib/microkit/item.rb
78
78
  - lib/microkit/microkit.rb
79
79
  - lib/microkit/network_controller.rb
80
+ - lib/microkit/permit.rb
80
81
  - lib/microkit/publisher.rb
81
82
  - lib/microkit/version.rb
82
83
  - microkit-ruby-sdk.gemspec