zaikio-directory 0.0.4 → 0.0.5
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1ee582c20c55f62a0b07e24dc51924982c4ed5fb0e8853c92042c1485ff91319
|
4
|
+
data.tar.gz: 8f886aae2708711336ca2a2911beeb8a769680cd821334f7525ce9f01b544f6d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0152acb74f6a20207cc649d4f7e8d0ced6c78d54480ba81411d933146bd6af0b4fb33f4e604b07107ab265c1e7822a110d05d13a947bc454a449b24da26661c4
|
7
|
+
data.tar.gz: f4b338c8f5853fb6b8ef594d2d1b2ef08de1b6b8860d1e31fec189a7a847810e0a8af58f3702cf4f91265c2d31080530e30486fe62a353a42443f0e110527b97
|
data/lib/zaikio/directory.rb
CHANGED
@@ -3,6 +3,7 @@ require "spyke"
|
|
3
3
|
require "zaikio/directory/configuration"
|
4
4
|
require "zaikio/directory/json_parser"
|
5
5
|
require "zaikio/directory/authorization_middleware"
|
6
|
+
require "zaikio/directory/basic_auth_middleware"
|
6
7
|
|
7
8
|
# Models
|
8
9
|
require "zaikio/directory/base"
|
@@ -18,6 +19,7 @@ require "zaikio/directory/current_person"
|
|
18
19
|
require "zaikio/directory/current_organization"
|
19
20
|
require "zaikio/directory/role"
|
20
21
|
require "zaikio/directory/revoked_access_token"
|
22
|
+
require "zaikio/directory/connection"
|
21
23
|
|
22
24
|
module Zaikio
|
23
25
|
module Directory
|
@@ -39,6 +41,13 @@ module Zaikio
|
|
39
41
|
AuthorizationMiddleware.reset_token
|
40
42
|
end
|
41
43
|
|
44
|
+
def with_basic_auth(login, password)
|
45
|
+
BasicAuthMiddleware.credentials [login, password]
|
46
|
+
yield
|
47
|
+
ensure
|
48
|
+
BasicAuthMiddleware.reset_credentials
|
49
|
+
end
|
50
|
+
|
42
51
|
def current_token_data
|
43
52
|
return unless AuthorizationMiddleware.token
|
44
53
|
|
@@ -53,6 +62,7 @@ module Zaikio
|
|
53
62
|
c.response :logger, configuration&.logger
|
54
63
|
c.use JSONParser
|
55
64
|
c.use AuthorizationMiddleware
|
65
|
+
c.use BasicAuthMiddleware
|
56
66
|
c.adapter Faraday.default_adapter
|
57
67
|
end
|
58
68
|
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require "faraday"
|
2
|
+
require "base64"
|
3
|
+
|
4
|
+
module Zaikio
|
5
|
+
module Directory
|
6
|
+
class BasicAuthMiddleware < Faraday::Middleware
|
7
|
+
def self.reset_credentials
|
8
|
+
@credentials = nil
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.credentials(credentials = nil)
|
12
|
+
@credentials = credentials || @credentials
|
13
|
+
end
|
14
|
+
|
15
|
+
def call(request_env)
|
16
|
+
if self.class.credentials
|
17
|
+
value = Base64.encode64(self.class.credentials.join(":"))
|
18
|
+
value.delete!("\n")
|
19
|
+
request_env[:request_headers]["Authorization"] = "Basic #{value}"
|
20
|
+
end
|
21
|
+
|
22
|
+
@app.call(request_env).on_complete do |response_env|
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zaikio-directory
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Zaikio GmbH
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-04-
|
11
|
+
date: 2020-04-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jwt
|
@@ -79,8 +79,10 @@ files:
|
|
79
79
|
- lib/zaikio/directory.rb
|
80
80
|
- lib/zaikio/directory/authorization_middleware.rb
|
81
81
|
- lib/zaikio/directory/base.rb
|
82
|
+
- lib/zaikio/directory/basic_auth_middleware.rb
|
82
83
|
- lib/zaikio/directory/business_relationship.rb
|
83
84
|
- lib/zaikio/directory/configuration.rb
|
85
|
+
- lib/zaikio/directory/connection.rb
|
84
86
|
- lib/zaikio/directory/current_organization.rb
|
85
87
|
- lib/zaikio/directory/current_person.rb
|
86
88
|
- lib/zaikio/directory/json_parser.rb
|