permit-sdk 0 → 0.0.1

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/api/utils.rb +9 -0
  3. data/lib/main.rb +49 -0
  4. metadata +8 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2ea145409329d91e18e3ec8444910fcbb7051c1d3c93b32e947a6cf4923fb58c
4
- data.tar.gz: c18201192ebefb75e82dacedd26eb0b71b6bcb61789182b1d6bd29520715878c
3
+ metadata.gz: b2f70db526a9e0faffa1d423e5d6ebdc7561aecfffb2626e4f5350f351624153
4
+ data.tar.gz: 2414147d8ac281e8853405ca121d8cc32cddb9410a46f566cb0af5f2d60b62b9
5
5
  SHA512:
6
- metadata.gz: bbd83fb64b4be94c395ea19e5e45e609e56f6d232d7786e5a007162921c0b8390a5e89c8e4dc406d6bbb62fa4488d254b51866a452fd81702c06193e8641c268
7
- data.tar.gz: d5e7110ca0c3fc6eb2ea723308049968bc448134ef4bd18f5d9e40c906e76360f66ad086ef7ba8d7a6a13850a2f915eaaacd2e4e73e0e0602e98966708b21c73
6
+ metadata.gz: 504f160a6ecf37c0bc4755a2a58d871832e25f16a36ba1590717bec092e3a49dc63963aa3eb5527a2bf3611ff66d57e6b3d954883b7a6b98bddb23fe9438b2dd
7
+ data.tar.gz: 4ba505adc4f43973e0c05461bb9bcaa30cd39ceff2f44d648f083d47b92f5671854e2e9fb481f3cf905dd75985fc5d145de5054e020e336244e618e736e4e09a
data/lib/api/utils.rb ADDED
@@ -0,0 +1,9 @@
1
+ class Utils
2
+ def self.get_schema_from_url(url)
3
+ url.split(':')[0]
4
+ end
5
+
6
+ def self.get_host_from_url(url)
7
+ url.split(':')[1].split('/')[2]
8
+ end
9
+ end
data/lib/main.rb ADDED
@@ -0,0 +1,49 @@
1
+ require 'webrick'
2
+ require_relative 'permit'
3
+
4
+ permit = Permit.new( "TOKEN")
5
+
6
+ server = WEBrick::HTTPServer.new(Port: 3000)
7
+
8
+ server.mount_proc '/' do |_, res|
9
+ res['Content-Type'] = 'application/json'
10
+ user = { id: "daniel@permit.io", first_name: nil, last_name: nil, email: "daniel@permit.io" }
11
+
12
+ permitted = permit.check("daniel@permit.io", "create", "Blog_Post")
13
+ if permitted
14
+ res.status = 200
15
+ res.body = { result: "#{user[:first_name]} #{user[:last_name]} is PERMITTED to create Blog_Post!" }.to_json
16
+ next
17
+ end
18
+ res.status = 403
19
+ res.body = { result: "#{user[:first_name]} #{user[:last_name]} is NOT PERMITTED to create Blog_Post!" }.to_json
20
+ end
21
+
22
+ trap 'INT' do server.shutdown end
23
+
24
+ server.start
25
+
26
+
27
+ # require_relative 'permit'
28
+ # require_relative 'openapi_client/models/user_create'
29
+ # permit = Permit.new('token')
30
+ # a = permit.api.users.get("asdf12")
31
+ # # allow = permit.check('daniel@permit.io', 'create', 'Blog_Post:123')
32
+ # # if allow
33
+ # # puts "Allow"
34
+ # # else
35
+ # # puts "Deny"
36
+ # # end
37
+ # #
38
+ # # allow = permit.check({"key": "daniel@permit.io"}, 'create', {"type":"Blog_Post","tenant":"default", "key":"123"})
39
+ # # if allow
40
+ # # puts "Allow"
41
+ # # else
42
+ # # puts "Deny"
43
+ # # end
44
+ # user = OpenapiClient::UserCreate.new(key: "asdf1234", email: "raz@maiol.com", first_name: "Raz", last_name: "Ma")
45
+ # a = permit.sync_user(user)
46
+ # puts a
47
+ #
48
+ # a = permit.sync_user({ key: "asdf12345", email: "raz@maiol.com", first_name: "Raz", last_name: "Ma" })
49
+ # puts a
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: permit-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: '0'
4
+ version: 0.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Permit.io
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2023-02-06 00:00:00.000000000 Z
@@ -24,7 +24,7 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
- description:
27
+ description:
28
28
  email:
29
29
  - raz@permit.io
30
30
  executables: []
@@ -36,7 +36,9 @@ files:
36
36
  - lib/api/resources.rb
37
37
  - lib/api/tenants.rb
38
38
  - lib/api/users.rb
39
+ - lib/api/utils.rb
39
40
  - lib/config.rb
41
+ - lib/main.rb
40
42
  - lib/openapi_client.rb
41
43
  - lib/openapi_client/api/api_keys_api.rb
42
44
  - lib/openapi_client/api/audit_elements_data_api.rb
@@ -227,7 +229,7 @@ homepage: https://permit.io
227
229
  licenses:
228
230
  - MIT
229
231
  metadata: {}
230
- post_install_message:
232
+ post_install_message:
231
233
  rdoc_options: []
232
234
  require_paths:
233
235
  - lib
@@ -242,8 +244,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
242
244
  - !ruby/object:Gem::Version
243
245
  version: '0'
244
246
  requirements: []
245
- rubygems_version: 3.1.6
246
- signing_key:
247
+ rubygems_version: 3.3.3
248
+ signing_key:
247
249
  specification_version: 4
248
250
  summary: Permit.io Server SDK
249
251
  test_files: []