keynetra-client 0.1.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 (209) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +49 -0
  4. data/Rakefile +10 -0
  5. data/docs/ACLCreate.md +28 -0
  6. data/docs/ACLOut.md +34 -0
  7. data/docs/AccessApi.md +234 -0
  8. data/docs/AccessDecisionResponse.md +30 -0
  9. data/docs/AccessRequest.md +28 -0
  10. data/docs/AdminLoginRequest.md +20 -0
  11. data/docs/AdminLoginResponse.md +26 -0
  12. data/docs/AuditRecordOut.md +42 -0
  13. data/docs/AuthApi.md +133 -0
  14. data/docs/AuthModelCreate.md +18 -0
  15. data/docs/AuthModelOut.md +26 -0
  16. data/docs/BatchAccessItem.md +20 -0
  17. data/docs/BatchAccessRequest.md +24 -0
  18. data/docs/BatchAccessResponse.md +20 -0
  19. data/docs/BatchAccessResult.md +22 -0
  20. data/docs/DataValue.md +15 -0
  21. data/docs/DevApi.md +132 -0
  22. data/docs/HTTPValidationError.md +18 -0
  23. data/docs/HealthApi.md +187 -0
  24. data/docs/ImpactAnalysisRequest.md +18 -0
  25. data/docs/ImpactAnalysisResponse.md +20 -0
  26. data/docs/LocationInner.md +15 -0
  27. data/docs/ManagementApi.md +2096 -0
  28. data/docs/MetaBody.md +24 -0
  29. data/docs/PermissionCreate.md +18 -0
  30. data/docs/PermissionOut.md +20 -0
  31. data/docs/PermissionUpdate.md +18 -0
  32. data/docs/PlaygroundApi.md +80 -0
  33. data/docs/PlaygroundEvaluateRequest.md +20 -0
  34. data/docs/PlaygroundInput.md +24 -0
  35. data/docs/PlaygroundPolicy.md +26 -0
  36. data/docs/PolicyCreate.md +26 -0
  37. data/docs/PolicyOut.md +28 -0
  38. data/docs/PolicySimulationInput.md +22 -0
  39. data/docs/PolicySimulationRequest.md +20 -0
  40. data/docs/PolicySimulationResponse.md +20 -0
  41. data/docs/RelationshipCreate.md +26 -0
  42. data/docs/RelationshipOut.md +28 -0
  43. data/docs/RoleCreate.md +18 -0
  44. data/docs/RoleOut.md +20 -0
  45. data/docs/RoleUpdate.md +18 -0
  46. data/docs/SimulationResponse.md +30 -0
  47. data/docs/SuccessResponseACLOut.md +22 -0
  48. data/docs/SuccessResponseAccessDecisionResponse.md +22 -0
  49. data/docs/SuccessResponseAdminLoginResponse.md +22 -0
  50. data/docs/SuccessResponseAuthModelOut.md +22 -0
  51. data/docs/SuccessResponseBatchAccessResponse.md +22 -0
  52. data/docs/SuccessResponseDictStrAny.md +22 -0
  53. data/docs/SuccessResponseDictStrInt.md +22 -0
  54. data/docs/SuccessResponseDictStrObject.md +22 -0
  55. data/docs/SuccessResponseDictStrStr.md +22 -0
  56. data/docs/SuccessResponseDictStrUnionIntStr.md +22 -0
  57. data/docs/SuccessResponseImpactAnalysisResponse.md +22 -0
  58. data/docs/SuccessResponseListACLOut.md +22 -0
  59. data/docs/SuccessResponseListAuditRecordOut.md +22 -0
  60. data/docs/SuccessResponseListDictStrStr.md +22 -0
  61. data/docs/SuccessResponseListPermissionOut.md +22 -0
  62. data/docs/SuccessResponseListPolicyOut.md +22 -0
  63. data/docs/SuccessResponseListRoleOut.md +22 -0
  64. data/docs/SuccessResponsePermissionOut.md +22 -0
  65. data/docs/SuccessResponsePolicyOut.md +22 -0
  66. data/docs/SuccessResponsePolicySimulationResponse.md +22 -0
  67. data/docs/SuccessResponseRelationshipOut.md +22 -0
  68. data/docs/SuccessResponseSimulationResponse.md +22 -0
  69. data/docs/ValidationError.md +26 -0
  70. data/git_push.sh +57 -0
  71. data/keynetra-client.gemspec +39 -0
  72. data/lib/keynetra-client/api/access_api.rb +226 -0
  73. data/lib/keynetra-client/api/auth_api.rb +154 -0
  74. data/lib/keynetra-client/api/dev_api.rb +135 -0
  75. data/lib/keynetra-client/api/health_api.rb +187 -0
  76. data/lib/keynetra-client/api/management_api.rb +1851 -0
  77. data/lib/keynetra-client/api/playground_api.rb +88 -0
  78. data/lib/keynetra-client/api_client.rb +397 -0
  79. data/lib/keynetra-client/api_error.rb +58 -0
  80. data/lib/keynetra-client/api_model_base.rb +88 -0
  81. data/lib/keynetra-client/configuration.rb +315 -0
  82. data/lib/keynetra-client/models/access_decision_response.rb +242 -0
  83. data/lib/keynetra-client/models/access_request.rb +219 -0
  84. data/lib/keynetra-client/models/acl_create.rb +294 -0
  85. data/lib/keynetra-client/models/acl_out.rb +356 -0
  86. data/lib/keynetra-client/models/admin_login_request.rb +190 -0
  87. data/lib/keynetra-client/models/admin_login_response.rb +238 -0
  88. data/lib/keynetra-client/models/audit_record_out.rb +454 -0
  89. data/lib/keynetra-client/models/auth_model_create.rb +164 -0
  90. data/lib/keynetra-client/models/auth_model_out.rb +272 -0
  91. data/lib/keynetra-client/models/batch_access_item.rb +175 -0
  92. data/lib/keynetra-client/models/batch_access_request.rb +198 -0
  93. data/lib/keynetra-client/models/batch_access_response.rb +176 -0
  94. data/lib/keynetra-client/models/batch_access_result.rb +200 -0
  95. data/lib/keynetra-client/models/data_value.rb +103 -0
  96. data/lib/keynetra-client/models/http_validation_error.rb +149 -0
  97. data/lib/keynetra-client/models/impact_analysis_request.rb +164 -0
  98. data/lib/keynetra-client/models/impact_analysis_response.rb +160 -0
  99. data/lib/keynetra-client/models/location_inner.rb +103 -0
  100. data/lib/keynetra-client/models/meta_body.rb +179 -0
  101. data/lib/keynetra-client/models/permission_create.rb +164 -0
  102. data/lib/keynetra-client/models/permission_out.rb +190 -0
  103. data/lib/keynetra-client/models/permission_update.rb +164 -0
  104. data/lib/keynetra-client/models/playground_evaluate_request.rb +192 -0
  105. data/lib/keynetra-client/models/playground_input.rb +182 -0
  106. data/lib/keynetra-client/models/playground_policy.rb +207 -0
  107. data/lib/keynetra-client/models/policy_create.rb +208 -0
  108. data/lib/keynetra-client/models/policy_out.rb +281 -0
  109. data/lib/keynetra-client/models/policy_simulation_input.rb +172 -0
  110. data/lib/keynetra-client/models/policy_simulation_request.rb +158 -0
  111. data/lib/keynetra-client/models/policy_simulation_response.rb +194 -0
  112. data/lib/keynetra-client/models/relationship_create.rb +268 -0
  113. data/lib/keynetra-client/models/relationship_out.rb +294 -0
  114. data/lib/keynetra-client/models/role_create.rb +164 -0
  115. data/lib/keynetra-client/models/role_out.rb +190 -0
  116. data/lib/keynetra-client/models/role_update.rb +164 -0
  117. data/lib/keynetra-client/models/simulation_response.rb +244 -0
  118. data/lib/keynetra-client/models/success_response_access_decision_response.rb +182 -0
  119. data/lib/keynetra-client/models/success_response_acl_out.rb +182 -0
  120. data/lib/keynetra-client/models/success_response_admin_login_response.rb +182 -0
  121. data/lib/keynetra-client/models/success_response_auth_model_out.rb +182 -0
  122. data/lib/keynetra-client/models/success_response_batch_access_response.rb +182 -0
  123. data/lib/keynetra-client/models/success_response_dict_str_any.rb +184 -0
  124. data/lib/keynetra-client/models/success_response_dict_str_int.rb +184 -0
  125. data/lib/keynetra-client/models/success_response_dict_str_object.rb +184 -0
  126. data/lib/keynetra-client/models/success_response_dict_str_str.rb +184 -0
  127. data/lib/keynetra-client/models/success_response_dict_str_union_int_str.rb +184 -0
  128. data/lib/keynetra-client/models/success_response_impact_analysis_response.rb +182 -0
  129. data/lib/keynetra-client/models/success_response_list_acl_out.rb +184 -0
  130. data/lib/keynetra-client/models/success_response_list_audit_record_out.rb +184 -0
  131. data/lib/keynetra-client/models/success_response_list_dict_str_str.rb +184 -0
  132. data/lib/keynetra-client/models/success_response_list_permission_out.rb +184 -0
  133. data/lib/keynetra-client/models/success_response_list_policy_out.rb +184 -0
  134. data/lib/keynetra-client/models/success_response_list_role_out.rb +184 -0
  135. data/lib/keynetra-client/models/success_response_permission_out.rb +182 -0
  136. data/lib/keynetra-client/models/success_response_policy_out.rb +182 -0
  137. data/lib/keynetra-client/models/success_response_policy_simulation_response.rb +182 -0
  138. data/lib/keynetra-client/models/success_response_relationship_out.rb +182 -0
  139. data/lib/keynetra-client/models/success_response_simulation_response.rb +182 -0
  140. data/lib/keynetra-client/models/validation_error.rb +237 -0
  141. data/lib/keynetra-client/version.rb +15 -0
  142. data/lib/keynetra-client.rb +105 -0
  143. data/spec/api/access_api_spec.rb +70 -0
  144. data/spec/api/auth_api_spec.rb +57 -0
  145. data/spec/api/dev_api_spec.rb +56 -0
  146. data/spec/api/health_api_spec.rb +65 -0
  147. data/spec/api/management_api_spec.rb +361 -0
  148. data/spec/api/playground_api_spec.rb +46 -0
  149. data/spec/models/access_decision_response_spec.rb +72 -0
  150. data/spec/models/access_request_spec.rb +66 -0
  151. data/spec/models/acl_create_spec.rb +66 -0
  152. data/spec/models/acl_out_spec.rb +84 -0
  153. data/spec/models/admin_login_request_spec.rb +42 -0
  154. data/spec/models/admin_login_response_spec.rb +60 -0
  155. data/spec/models/audit_record_out_spec.rb +108 -0
  156. data/spec/models/auth_model_create_spec.rb +36 -0
  157. data/spec/models/auth_model_out_spec.rb +60 -0
  158. data/spec/models/batch_access_item_spec.rb +42 -0
  159. data/spec/models/batch_access_request_spec.rb +54 -0
  160. data/spec/models/batch_access_response_spec.rb +42 -0
  161. data/spec/models/batch_access_result_spec.rb +48 -0
  162. data/spec/models/data_value_spec.rb +21 -0
  163. data/spec/models/http_validation_error_spec.rb +36 -0
  164. data/spec/models/impact_analysis_request_spec.rb +36 -0
  165. data/spec/models/impact_analysis_response_spec.rb +42 -0
  166. data/spec/models/location_inner_spec.rb +21 -0
  167. data/spec/models/meta_body_spec.rb +54 -0
  168. data/spec/models/permission_create_spec.rb +36 -0
  169. data/spec/models/permission_out_spec.rb +42 -0
  170. data/spec/models/permission_update_spec.rb +36 -0
  171. data/spec/models/playground_evaluate_request_spec.rb +42 -0
  172. data/spec/models/playground_input_spec.rb +54 -0
  173. data/spec/models/playground_policy_spec.rb +60 -0
  174. data/spec/models/policy_create_spec.rb +60 -0
  175. data/spec/models/policy_out_spec.rb +66 -0
  176. data/spec/models/policy_simulation_input_spec.rb +48 -0
  177. data/spec/models/policy_simulation_request_spec.rb +42 -0
  178. data/spec/models/policy_simulation_response_spec.rb +42 -0
  179. data/spec/models/relationship_create_spec.rb +60 -0
  180. data/spec/models/relationship_out_spec.rb +66 -0
  181. data/spec/models/role_create_spec.rb +36 -0
  182. data/spec/models/role_out_spec.rb +42 -0
  183. data/spec/models/role_update_spec.rb +36 -0
  184. data/spec/models/simulation_response_spec.rb +72 -0
  185. data/spec/models/success_response_access_decision_response_spec.rb +48 -0
  186. data/spec/models/success_response_acl_out_spec.rb +48 -0
  187. data/spec/models/success_response_admin_login_response_spec.rb +48 -0
  188. data/spec/models/success_response_auth_model_out_spec.rb +48 -0
  189. data/spec/models/success_response_batch_access_response_spec.rb +48 -0
  190. data/spec/models/success_response_dict_str_any_spec.rb +48 -0
  191. data/spec/models/success_response_dict_str_int_spec.rb +48 -0
  192. data/spec/models/success_response_dict_str_object_spec.rb +48 -0
  193. data/spec/models/success_response_dict_str_str_spec.rb +48 -0
  194. data/spec/models/success_response_dict_str_union_int_str_spec.rb +48 -0
  195. data/spec/models/success_response_impact_analysis_response_spec.rb +48 -0
  196. data/spec/models/success_response_list_acl_out_spec.rb +48 -0
  197. data/spec/models/success_response_list_audit_record_out_spec.rb +48 -0
  198. data/spec/models/success_response_list_dict_str_str_spec.rb +48 -0
  199. data/spec/models/success_response_list_permission_out_spec.rb +48 -0
  200. data/spec/models/success_response_list_policy_out_spec.rb +48 -0
  201. data/spec/models/success_response_list_role_out_spec.rb +48 -0
  202. data/spec/models/success_response_permission_out_spec.rb +48 -0
  203. data/spec/models/success_response_policy_out_spec.rb +48 -0
  204. data/spec/models/success_response_policy_simulation_response_spec.rb +48 -0
  205. data/spec/models/success_response_relationship_out_spec.rb +48 -0
  206. data/spec/models/success_response_simulation_response_spec.rb +48 -0
  207. data/spec/models/validation_error_spec.rb +60 -0
  208. data/spec/spec_helper.rb +111 -0
  209. metadata +356 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 6726f396d1c490c843b50c0da08446d605a0e48a43d30b28784f1cba2627cb26
4
+ data.tar.gz: 73b0505539cda9eb48a6827924495d349b536f58fd7ebeabf23ce3bd9f7ceb25
5
+ SHA512:
6
+ metadata.gz: 6b4f37ad87c1143ee1ee573a18e7c1a0660dd73275a63931ca7cf948e8d7eacd7e3059a0fe45f900895b64d391cf32991c3cd4caadc99d04abb3e9f1b95432c2
7
+ data.tar.gz: b54d6d02b91439ac8768b75c1530156d7c81bf7d9f2961b409758cda06a0fa911fb293a13926056d54d717de61f54ed59b316e26f4f90d1cf40b0e89664f83d3
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development, :test do
6
+ gem 'rake', '~> 13.0.1'
7
+ gem 'pry-byebug'
8
+ gem 'rubocop', '~> 0.66.0'
9
+ end
data/README.md ADDED
@@ -0,0 +1,49 @@
1
+ # keynetra-client
2
+
3
+ [![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
4
+ [![Version](https://img.shields.io/badge/version-0.1.1-green.svg)]()
5
+ [![Documentation](https://img.shields.io/badge/docs-latest-brightgreen.svg)](https://docs.keynetra.com/sdks/ruby)
6
+
7
+ Official Ruby Client SDK for the [KeyNetra](https://keynetra.com) authorization platform. 🛡️
8
+
9
+ KeyNetra provides high-performance, distributed authorization as a service. This SDK allows your Ruby applications to integrate seamlessly with KeyNetra for access control and policy management.
10
+
11
+ ## ✨ Features
12
+
13
+ - **🚀 Unified Client**: Simple entry point for all API operations.
14
+ - **🛡️ Type Safety**: Full type definitions for requests and responses.
15
+ - **🔑 Security**: Built-in support for API Key and Bearer token authentication.
16
+ - **⚡ Performance**: Optimized for low-latency authorization checks.
17
+
18
+ ## 📦 Installation
19
+
20
+ ```bash
21
+ gem install keynetra-client
22
+ ```
23
+
24
+ ## 🚀 Quick Start
25
+
26
+ ```ruby
27
+ require 'keynetra-client'
28
+
29
+ client = KeyNetra::KeyNetraClient.new(
30
+ "http://localhost:8080",
31
+ "YOUR_API_KEY"
32
+ )
33
+
34
+ # Perform an access check
35
+ decision = client.access_api.check_access(...)
36
+ ```
37
+
38
+
39
+
40
+ ## 📚 Documentation
41
+
42
+ For full API documentation, please visit the [KeyNetra Documentation Portal](https://docs.keynetra.com/sdks/ruby).
43
+
44
+ ## 🤝 Support
45
+
46
+ - **Source**: [https://github.com/keynetra/keynetra-client-ruby](https://github.com/keynetra/keynetra-client-ruby)
47
+ - **Issues**: [GitHub Issues](https://github.com/keynetra/keynetra-client-ruby/issues)
48
+ - **License**: Apache-2.0
49
+
data/Rakefile ADDED
@@ -0,0 +1,10 @@
1
+ require "bundler/gem_tasks"
2
+
3
+ begin
4
+ require 'rspec/core/rake_task'
5
+
6
+ RSpec::Core::RakeTask.new(:spec)
7
+ task default: :spec
8
+ rescue LoadError
9
+ # no rspec available
10
+ end
data/docs/ACLCreate.md ADDED
@@ -0,0 +1,28 @@
1
+ # KeyNetra::ACLCreate
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **subject_type** | **String** | | |
8
+ | **subject_id** | **String** | | |
9
+ | **resource_type** | **String** | | |
10
+ | **resource_id** | **String** | | |
11
+ | **action** | **String** | | |
12
+ | **effect** | **String** | | |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'keynetra-client'
18
+
19
+ instance = KeyNetra::ACLCreate.new(
20
+ subject_type: null,
21
+ subject_id: null,
22
+ resource_type: null,
23
+ resource_id: null,
24
+ action: null,
25
+ effect: null
26
+ )
27
+ ```
28
+
data/docs/ACLOut.md ADDED
@@ -0,0 +1,34 @@
1
+ # KeyNetra::ACLOut
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **subject_type** | **String** | | |
8
+ | **subject_id** | **String** | | |
9
+ | **resource_type** | **String** | | |
10
+ | **resource_id** | **String** | | |
11
+ | **action** | **String** | | |
12
+ | **effect** | **String** | | |
13
+ | **id** | **Integer** | | |
14
+ | **tenant_id** | **Integer** | | |
15
+ | **created_at** | **Time** | | [optional] |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'keynetra-client'
21
+
22
+ instance = KeyNetra::ACLOut.new(
23
+ subject_type: null,
24
+ subject_id: null,
25
+ resource_type: null,
26
+ resource_id: null,
27
+ action: null,
28
+ effect: null,
29
+ id: null,
30
+ tenant_id: null,
31
+ created_at: null
32
+ )
33
+ ```
34
+
data/docs/AccessApi.md ADDED
@@ -0,0 +1,234 @@
1
+ # KeyNetra::AccessApi
2
+
3
+ All URIs are relative to *http://localhost*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**check_access_batch_check_access_batch_post**](AccessApi.md#check_access_batch_check_access_batch_post) | **POST** /check-access-batch | Check Access Batch |
8
+ | [**check_access_check_access_post**](AccessApi.md#check_access_check_access_post) | **POST** /check-access | Check Access |
9
+ | [**simulate_simulate_post**](AccessApi.md#simulate_simulate_post) | **POST** /simulate | Simulate |
10
+
11
+
12
+ ## check_access_batch_check_access_batch_post
13
+
14
+ > <SuccessResponseBatchAccessResponse> check_access_batch_check_access_batch_post(batch_access_request, opts)
15
+
16
+ Check Access Batch
17
+
18
+ ### Examples
19
+
20
+ ```ruby
21
+ require 'time'
22
+ require 'keynetra-client'
23
+ # setup authorization
24
+ KeyNetra.configure do |config|
25
+ # Configure API key authorization: APIKeyHeader
26
+ config.api_key['X-API-Key'] = 'YOUR API KEY'
27
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
28
+ # config.api_key_prefix['X-API-Key'] = 'Bearer'
29
+
30
+ # Configure Bearer authorization: HTTPBearer
31
+ config.access_token = 'YOUR_BEARER_TOKEN'
32
+ end
33
+
34
+ api_instance = KeyNetra::AccessApi.new
35
+ batch_access_request = KeyNetra::BatchAccessRequest.new({items: [KeyNetra::BatchAccessItem.new({action: 'action_example'})]}) # BatchAccessRequest |
36
+ opts = {
37
+ policy_set: 'policy_set_example' # String |
38
+ }
39
+
40
+ begin
41
+ # Check Access Batch
42
+ result = api_instance.check_access_batch_check_access_batch_post(batch_access_request, opts)
43
+ p result
44
+ rescue KeyNetra::ApiError => e
45
+ puts "Error when calling AccessApi->check_access_batch_check_access_batch_post: #{e}"
46
+ end
47
+ ```
48
+
49
+ #### Using the check_access_batch_check_access_batch_post_with_http_info variant
50
+
51
+ This returns an Array which contains the response data, status code and headers.
52
+
53
+ > <Array(<SuccessResponseBatchAccessResponse>, Integer, Hash)> check_access_batch_check_access_batch_post_with_http_info(batch_access_request, opts)
54
+
55
+ ```ruby
56
+ begin
57
+ # Check Access Batch
58
+ data, status_code, headers = api_instance.check_access_batch_check_access_batch_post_with_http_info(batch_access_request, opts)
59
+ p status_code # => 2xx
60
+ p headers # => { ... }
61
+ p data # => <SuccessResponseBatchAccessResponse>
62
+ rescue KeyNetra::ApiError => e
63
+ puts "Error when calling AccessApi->check_access_batch_check_access_batch_post_with_http_info: #{e}"
64
+ end
65
+ ```
66
+
67
+ ### Parameters
68
+
69
+ | Name | Type | Description | Notes |
70
+ | ---- | ---- | ----------- | ----- |
71
+ | **batch_access_request** | [**BatchAccessRequest**](BatchAccessRequest.md) | | |
72
+ | **policy_set** | **String** | | [optional][default to &#39;active&#39;] |
73
+
74
+ ### Return type
75
+
76
+ [**SuccessResponseBatchAccessResponse**](SuccessResponseBatchAccessResponse.md)
77
+
78
+ ### Authorization
79
+
80
+ [APIKeyHeader](../README.md#APIKeyHeader), [HTTPBearer](../README.md#HTTPBearer)
81
+
82
+ ### HTTP request headers
83
+
84
+ - **Content-Type**: application/json
85
+ - **Accept**: application/json
86
+
87
+
88
+ ## check_access_check_access_post
89
+
90
+ > <SuccessResponseAccessDecisionResponse> check_access_check_access_post(access_request, opts)
91
+
92
+ Check Access
93
+
94
+ ### Examples
95
+
96
+ ```ruby
97
+ require 'time'
98
+ require 'keynetra-client'
99
+ # setup authorization
100
+ KeyNetra.configure do |config|
101
+ # Configure API key authorization: APIKeyHeader
102
+ config.api_key['X-API-Key'] = 'YOUR API KEY'
103
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
104
+ # config.api_key_prefix['X-API-Key'] = 'Bearer'
105
+
106
+ # Configure Bearer authorization: HTTPBearer
107
+ config.access_token = 'YOUR_BEARER_TOKEN'
108
+ end
109
+
110
+ api_instance = KeyNetra::AccessApi.new
111
+ access_request = KeyNetra::AccessRequest.new({action: 'action_example'}) # AccessRequest |
112
+ opts = {
113
+ policy_set: 'policy_set_example' # String |
114
+ }
115
+
116
+ begin
117
+ # Check Access
118
+ result = api_instance.check_access_check_access_post(access_request, opts)
119
+ p result
120
+ rescue KeyNetra::ApiError => e
121
+ puts "Error when calling AccessApi->check_access_check_access_post: #{e}"
122
+ end
123
+ ```
124
+
125
+ #### Using the check_access_check_access_post_with_http_info variant
126
+
127
+ This returns an Array which contains the response data, status code and headers.
128
+
129
+ > <Array(<SuccessResponseAccessDecisionResponse>, Integer, Hash)> check_access_check_access_post_with_http_info(access_request, opts)
130
+
131
+ ```ruby
132
+ begin
133
+ # Check Access
134
+ data, status_code, headers = api_instance.check_access_check_access_post_with_http_info(access_request, opts)
135
+ p status_code # => 2xx
136
+ p headers # => { ... }
137
+ p data # => <SuccessResponseAccessDecisionResponse>
138
+ rescue KeyNetra::ApiError => e
139
+ puts "Error when calling AccessApi->check_access_check_access_post_with_http_info: #{e}"
140
+ end
141
+ ```
142
+
143
+ ### Parameters
144
+
145
+ | Name | Type | Description | Notes |
146
+ | ---- | ---- | ----------- | ----- |
147
+ | **access_request** | [**AccessRequest**](AccessRequest.md) | | |
148
+ | **policy_set** | **String** | | [optional][default to &#39;active&#39;] |
149
+
150
+ ### Return type
151
+
152
+ [**SuccessResponseAccessDecisionResponse**](SuccessResponseAccessDecisionResponse.md)
153
+
154
+ ### Authorization
155
+
156
+ [APIKeyHeader](../README.md#APIKeyHeader), [HTTPBearer](../README.md#HTTPBearer)
157
+
158
+ ### HTTP request headers
159
+
160
+ - **Content-Type**: application/json
161
+ - **Accept**: application/json
162
+
163
+
164
+ ## simulate_simulate_post
165
+
166
+ > <SuccessResponseSimulationResponse> simulate_simulate_post(access_request)
167
+
168
+ Simulate
169
+
170
+ ### Examples
171
+
172
+ ```ruby
173
+ require 'time'
174
+ require 'keynetra-client'
175
+ # setup authorization
176
+ KeyNetra.configure do |config|
177
+ # Configure API key authorization: APIKeyHeader
178
+ config.api_key['X-API-Key'] = 'YOUR API KEY'
179
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
180
+ # config.api_key_prefix['X-API-Key'] = 'Bearer'
181
+
182
+ # Configure Bearer authorization: HTTPBearer
183
+ config.access_token = 'YOUR_BEARER_TOKEN'
184
+ end
185
+
186
+ api_instance = KeyNetra::AccessApi.new
187
+ access_request = KeyNetra::AccessRequest.new({action: 'action_example'}) # AccessRequest |
188
+
189
+ begin
190
+ # Simulate
191
+ result = api_instance.simulate_simulate_post(access_request)
192
+ p result
193
+ rescue KeyNetra::ApiError => e
194
+ puts "Error when calling AccessApi->simulate_simulate_post: #{e}"
195
+ end
196
+ ```
197
+
198
+ #### Using the simulate_simulate_post_with_http_info variant
199
+
200
+ This returns an Array which contains the response data, status code and headers.
201
+
202
+ > <Array(<SuccessResponseSimulationResponse>, Integer, Hash)> simulate_simulate_post_with_http_info(access_request)
203
+
204
+ ```ruby
205
+ begin
206
+ # Simulate
207
+ data, status_code, headers = api_instance.simulate_simulate_post_with_http_info(access_request)
208
+ p status_code # => 2xx
209
+ p headers # => { ... }
210
+ p data # => <SuccessResponseSimulationResponse>
211
+ rescue KeyNetra::ApiError => e
212
+ puts "Error when calling AccessApi->simulate_simulate_post_with_http_info: #{e}"
213
+ end
214
+ ```
215
+
216
+ ### Parameters
217
+
218
+ | Name | Type | Description | Notes |
219
+ | ---- | ---- | ----------- | ----- |
220
+ | **access_request** | [**AccessRequest**](AccessRequest.md) | | |
221
+
222
+ ### Return type
223
+
224
+ [**SuccessResponseSimulationResponse**](SuccessResponseSimulationResponse.md)
225
+
226
+ ### Authorization
227
+
228
+ [APIKeyHeader](../README.md#APIKeyHeader), [HTTPBearer](../README.md#HTTPBearer)
229
+
230
+ ### HTTP request headers
231
+
232
+ - **Content-Type**: application/json
233
+ - **Accept**: application/json
234
+
@@ -0,0 +1,30 @@
1
+ # KeyNetra::AccessDecisionResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **allowed** | **Boolean** | | |
8
+ | **decision** | **String** | | |
9
+ | **matched_policies** | **Array&lt;String&gt;** | | [optional] |
10
+ | **reason** | **String** | | [optional] |
11
+ | **policy_id** | **String** | | [optional] |
12
+ | **explain_trace** | **Array&lt;Hash&lt;String, Object&gt;&gt;** | | [optional] |
13
+ | **revision** | **Integer** | | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'keynetra-client'
19
+
20
+ instance = KeyNetra::AccessDecisionResponse.new(
21
+ allowed: null,
22
+ decision: null,
23
+ matched_policies: null,
24
+ reason: null,
25
+ policy_id: null,
26
+ explain_trace: null,
27
+ revision: null
28
+ )
29
+ ```
30
+
@@ -0,0 +1,28 @@
1
+ # KeyNetra::AccessRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **user** | **Hash&lt;String, Object&gt;** | | [optional] |
8
+ | **action** | **String** | | |
9
+ | **resource** | **Hash&lt;String, Object&gt;** | | [optional] |
10
+ | **context** | **Hash&lt;String, Object&gt;** | | [optional] |
11
+ | **consistency** | **String** | | [optional][default to &#39;eventual&#39;] |
12
+ | **revision** | **Integer** | | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'keynetra-client'
18
+
19
+ instance = KeyNetra::AccessRequest.new(
20
+ user: null,
21
+ action: null,
22
+ resource: null,
23
+ context: null,
24
+ consistency: null,
25
+ revision: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,20 @@
1
+ # KeyNetra::AdminLoginRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **username** | **String** | | |
8
+ | **password** | **String** | | |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'keynetra-client'
14
+
15
+ instance = KeyNetra::AdminLoginRequest.new(
16
+ username: null,
17
+ password: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,26 @@
1
+ # KeyNetra::AdminLoginResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **access_token** | **String** | | |
8
+ | **token_type** | **String** | | [optional][default to &#39;bearer&#39;] |
9
+ | **expires_in** | **Integer** | | |
10
+ | **role** | **String** | | [optional][default to &#39;admin&#39;] |
11
+ | **tenant_key** | **String** | | |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'keynetra-client'
17
+
18
+ instance = KeyNetra::AdminLoginResponse.new(
19
+ access_token: null,
20
+ token_type: null,
21
+ expires_in: null,
22
+ role: null,
23
+ tenant_key: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,42 @@
1
+ # KeyNetra::AuditRecordOut
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **Integer** | | |
8
+ | **principal_type** | **String** | | |
9
+ | **principal_id** | **String** | | |
10
+ | **correlation_id** | **String** | | [optional] |
11
+ | **user** | **Hash&lt;String, Object&gt;** | | |
12
+ | **action** | **String** | | |
13
+ | **resource** | **Hash&lt;String, Object&gt;** | | |
14
+ | **decision** | **String** | | |
15
+ | **matched_policies** | **Array&lt;Object&gt;** | | |
16
+ | **reason** | **String** | | [optional] |
17
+ | **evaluated_rules** | **Array&lt;Object&gt;** | | |
18
+ | **failed_conditions** | **Array&lt;Object&gt;** | | |
19
+ | **created_at** | **Time** | | |
20
+
21
+ ## Example
22
+
23
+ ```ruby
24
+ require 'keynetra-client'
25
+
26
+ instance = KeyNetra::AuditRecordOut.new(
27
+ id: null,
28
+ principal_type: null,
29
+ principal_id: null,
30
+ correlation_id: null,
31
+ user: null,
32
+ action: null,
33
+ resource: null,
34
+ decision: null,
35
+ matched_policies: null,
36
+ reason: null,
37
+ evaluated_rules: null,
38
+ failed_conditions: null,
39
+ created_at: null
40
+ )
41
+ ```
42
+
data/docs/AuthApi.md ADDED
@@ -0,0 +1,133 @@
1
+ # KeyNetra::AuthApi
2
+
3
+ All URIs are relative to *http://localhost*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**admin_login_admin_login_post**](AuthApi.md#admin_login_admin_login_post) | **POST** /admin/login | Admin Login |
8
+ | [**admin_login_admin_login_post_0**](AuthApi.md#admin_login_admin_login_post_0) | **POST** /admin/login | Admin Login |
9
+
10
+
11
+ ## admin_login_admin_login_post
12
+
13
+ > <SuccessResponseAdminLoginResponse> admin_login_admin_login_post(admin_login_request)
14
+
15
+ Admin Login
16
+
17
+ ### Examples
18
+
19
+ ```ruby
20
+ require 'time'
21
+ require 'keynetra-client'
22
+
23
+ api_instance = KeyNetra::AuthApi.new
24
+ admin_login_request = KeyNetra::AdminLoginRequest.new({username: 'username_example', password: 'password_example'}) # AdminLoginRequest |
25
+
26
+ begin
27
+ # Admin Login
28
+ result = api_instance.admin_login_admin_login_post(admin_login_request)
29
+ p result
30
+ rescue KeyNetra::ApiError => e
31
+ puts "Error when calling AuthApi->admin_login_admin_login_post: #{e}"
32
+ end
33
+ ```
34
+
35
+ #### Using the admin_login_admin_login_post_with_http_info variant
36
+
37
+ This returns an Array which contains the response data, status code and headers.
38
+
39
+ > <Array(<SuccessResponseAdminLoginResponse>, Integer, Hash)> admin_login_admin_login_post_with_http_info(admin_login_request)
40
+
41
+ ```ruby
42
+ begin
43
+ # Admin Login
44
+ data, status_code, headers = api_instance.admin_login_admin_login_post_with_http_info(admin_login_request)
45
+ p status_code # => 2xx
46
+ p headers # => { ... }
47
+ p data # => <SuccessResponseAdminLoginResponse>
48
+ rescue KeyNetra::ApiError => e
49
+ puts "Error when calling AuthApi->admin_login_admin_login_post_with_http_info: #{e}"
50
+ end
51
+ ```
52
+
53
+ ### Parameters
54
+
55
+ | Name | Type | Description | Notes |
56
+ | ---- | ---- | ----------- | ----- |
57
+ | **admin_login_request** | [**AdminLoginRequest**](AdminLoginRequest.md) | | |
58
+
59
+ ### Return type
60
+
61
+ [**SuccessResponseAdminLoginResponse**](SuccessResponseAdminLoginResponse.md)
62
+
63
+ ### Authorization
64
+
65
+ No authorization required
66
+
67
+ ### HTTP request headers
68
+
69
+ - **Content-Type**: application/json
70
+ - **Accept**: application/json
71
+
72
+
73
+ ## admin_login_admin_login_post_0
74
+
75
+ > <SuccessResponseAdminLoginResponse> admin_login_admin_login_post_0(admin_login_request)
76
+
77
+ Admin Login
78
+
79
+ ### Examples
80
+
81
+ ```ruby
82
+ require 'time'
83
+ require 'keynetra-client'
84
+
85
+ api_instance = KeyNetra::AuthApi.new
86
+ admin_login_request = KeyNetra::AdminLoginRequest.new({username: 'username_example', password: 'password_example'}) # AdminLoginRequest |
87
+
88
+ begin
89
+ # Admin Login
90
+ result = api_instance.admin_login_admin_login_post_0(admin_login_request)
91
+ p result
92
+ rescue KeyNetra::ApiError => e
93
+ puts "Error when calling AuthApi->admin_login_admin_login_post_0: #{e}"
94
+ end
95
+ ```
96
+
97
+ #### Using the admin_login_admin_login_post_0_with_http_info variant
98
+
99
+ This returns an Array which contains the response data, status code and headers.
100
+
101
+ > <Array(<SuccessResponseAdminLoginResponse>, Integer, Hash)> admin_login_admin_login_post_0_with_http_info(admin_login_request)
102
+
103
+ ```ruby
104
+ begin
105
+ # Admin Login
106
+ data, status_code, headers = api_instance.admin_login_admin_login_post_0_with_http_info(admin_login_request)
107
+ p status_code # => 2xx
108
+ p headers # => { ... }
109
+ p data # => <SuccessResponseAdminLoginResponse>
110
+ rescue KeyNetra::ApiError => e
111
+ puts "Error when calling AuthApi->admin_login_admin_login_post_0_with_http_info: #{e}"
112
+ end
113
+ ```
114
+
115
+ ### Parameters
116
+
117
+ | Name | Type | Description | Notes |
118
+ | ---- | ---- | ----------- | ----- |
119
+ | **admin_login_request** | [**AdminLoginRequest**](AdminLoginRequest.md) | | |
120
+
121
+ ### Return type
122
+
123
+ [**SuccessResponseAdminLoginResponse**](SuccessResponseAdminLoginResponse.md)
124
+
125
+ ### Authorization
126
+
127
+ No authorization required
128
+
129
+ ### HTTP request headers
130
+
131
+ - **Content-Type**: application/json
132
+ - **Accept**: application/json
133
+
@@ -0,0 +1,18 @@
1
+ # KeyNetra::AuthModelCreate
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **schema** | **String** | | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'keynetra-client'
13
+
14
+ instance = KeyNetra::AuthModelCreate.new(
15
+ schema: null
16
+ )
17
+ ```
18
+