onelogin 1.8.0 → 3.0.0.pre.alpha.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 (338) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +7 -4
  3. data/README.md +244 -525
  4. data/Rakefile +7 -3
  5. data/docs/Action.md +26 -0
  6. data/docs/ActivateFactorRequest.md +24 -0
  7. data/docs/AddAccessTokenClaimRequest.md +22 -0
  8. data/docs/AddClientAppRequest.md +20 -0
  9. data/docs/AddRoleUsers200ResponseInner.md +18 -0
  10. data/docs/AddScopeRequest.md +20 -0
  11. data/docs/AuthMethod.md +15 -0
  12. data/docs/AuthServerConfiguration.md +24 -0
  13. data/docs/ClientApp.md +20 -0
  14. data/docs/Condition.md +22 -0
  15. data/docs/Connector.md +26 -0
  16. data/docs/CreateAuthorizationServerRequest.md +22 -0
  17. data/docs/CreateEnvironmentVariableRequest.md +20 -0
  18. data/docs/CreateRoles201ResponseInner.md +18 -0
  19. data/docs/DefaultApi.md +6812 -0
  20. data/docs/Device.md +26 -0
  21. data/docs/EnrollFactorRequest.md +28 -0
  22. data/docs/Envvar.md +24 -0
  23. data/docs/ErrorStatus.md +22 -0
  24. data/docs/ErrorStatusErrorsInner.md +20 -0
  25. data/docs/FactorInner.md +32 -0
  26. data/docs/FactorInnerFactorData.md +20 -0
  27. data/docs/GenerateMfaToken200Response.md +24 -0
  28. data/docs/GenerateMfaToken422Response.md +24 -0
  29. data/docs/GenerateMfaToken422ResponseDetails.md +18 -0
  30. data/docs/GenerateMfaTokenRequest.md +20 -0
  31. data/docs/GenerateSamlAssertionRequest.md +26 -0
  32. data/docs/GenerateToken200Response.md +28 -0
  33. data/docs/GenerateToken400Response.md +18 -0
  34. data/docs/GenerateTokenRequest.md +18 -0
  35. data/docs/GetAuthorizationServer200Response.md +24 -0
  36. data/docs/GetAvailableFactors200ResponseInner.md +22 -0
  37. data/docs/GetClientApps200ResponseInner.md +24 -0
  38. data/docs/GetClientApps200ResponseInnerScopesInner.md +22 -0
  39. data/docs/GetRateLimit200Response.md +20 -0
  40. data/docs/GetRateLimit200ResponseData.md +22 -0
  41. data/docs/GetRiskScore200Response.md +20 -0
  42. data/docs/GetRiskScore400Response.md +18 -0
  43. data/docs/GetRiskScoreRequest.md +30 -0
  44. data/docs/GetScoreInsights200Response.md +20 -0
  45. data/docs/GetScoreInsights200ResponseScores.md +26 -0
  46. data/docs/GetUserApps200ResponseInner.md +32 -0
  47. data/docs/Hook.md +46 -0
  48. data/docs/HookConditionsInner.md +22 -0
  49. data/docs/HookOptions.md +22 -0
  50. data/docs/HookStatus.md +20 -0
  51. data/docs/Id.md +18 -0
  52. data/docs/ListAccessTokenClaims200ResponseInner.md +34 -0
  53. data/docs/ListActions200ResponseInner.md +20 -0
  54. data/docs/ListAppUsers200ResponseInner.md +26 -0
  55. data/docs/ListAuthorizationServers200ResponseInner.md +24 -0
  56. data/docs/ListAuthorizationServers200ResponseInnerConfiguration.md +20 -0
  57. data/docs/ListConditionOperators200ResponseInner.md +20 -0
  58. data/docs/ListConditionValues200ResponseInner.md +20 -0
  59. data/docs/ListConditions200ResponseInner.md +20 -0
  60. data/docs/ListMappingConditionOperators200ResponseInner.md +20 -0
  61. data/docs/ListMappingConditions200ResponseInner.md +20 -0
  62. data/docs/ListScopes200ResponseInner.md +22 -0
  63. data/docs/Log.md +24 -0
  64. data/docs/Mapping.md +30 -0
  65. data/docs/Registration.md +22 -0
  66. data/docs/RemoveRoleUsersRequest.md +18 -0
  67. data/docs/RevokeTokenRequest.md +18 -0
  68. data/docs/RiskDevice.md +18 -0
  69. data/docs/RiskRule.md +30 -0
  70. data/docs/RiskUser.md +22 -0
  71. data/docs/Role.md +26 -0
  72. data/docs/Rule.md +30 -0
  73. data/docs/RuleId.md +18 -0
  74. data/docs/Schema.md +56 -0
  75. data/docs/Schema1.md +28 -0
  76. data/docs/Schema1AddedBy.md +20 -0
  77. data/docs/SchemaProvisioning.md +18 -0
  78. data/docs/Session.md +18 -0
  79. data/docs/SetRoleApps200ResponseInner.md +18 -0
  80. data/docs/Source.md +20 -0
  81. data/docs/Status.md +24 -0
  82. data/docs/Status1.md +22 -0
  83. data/docs/Status2.md +18 -0
  84. data/docs/Status2Status.md +24 -0
  85. data/docs/TrackEventRequest.md +34 -0
  86. data/docs/UpdateAuthorizationServer400Response.md +24 -0
  87. data/docs/UpdateClientAppRequest.md +18 -0
  88. data/docs/UpdateEnvironmentVariableRequest.md +18 -0
  89. data/docs/UpdateRole200Response.md +18 -0
  90. data/docs/User.md +90 -0
  91. data/docs/VerifyEnrollmentRequest.md +18 -0
  92. data/docs/VerifyFactorRequest.md +20 -0
  93. data/docs/VerifyFactorSaml200Response.md +20 -0
  94. data/docs/VerifyFactorSamlRequest.md +26 -0
  95. data/docs/VerifyFactorVoice200ResponseInner.md +22 -0
  96. data/git_push.sh +57 -0
  97. data/lib/onelogin/api/default_api.rb +7334 -0
  98. data/lib/onelogin/api_client.rb +391 -0
  99. data/lib/onelogin/api_error.rb +57 -0
  100. data/lib/onelogin/configuration.rb +282 -0
  101. data/lib/onelogin/models/action.rb +262 -0
  102. data/lib/onelogin/models/activate_factor_request.rb +250 -0
  103. data/lib/onelogin/models/add_access_token_claim_request.rb +237 -0
  104. data/lib/onelogin/models/add_client_app_request.rb +230 -0
  105. data/lib/onelogin/models/add_role_users200_response_inner.rb +219 -0
  106. data/lib/onelogin/models/add_scope_request.rb +228 -0
  107. data/lib/onelogin/models/auth_method.rb +43 -0
  108. data/lib/onelogin/models/auth_server_configuration.rb +248 -0
  109. data/lib/onelogin/models/client_app.rb +228 -0
  110. data/lib/onelogin/models/condition.rb +240 -0
  111. data/lib/onelogin/models/connector.rb +259 -0
  112. data/lib/onelogin/models/create_authorization_server_request.rb +237 -0
  113. data/lib/onelogin/models/create_environment_variable_request.rb +240 -0
  114. data/lib/onelogin/models/create_roles201_response_inner.rb +219 -0
  115. data/lib/onelogin/models/device.rb +255 -0
  116. data/lib/onelogin/models/enroll_factor_request.rb +280 -0
  117. data/lib/onelogin/models/envvar.rb +250 -0
  118. data/lib/onelogin/models/error_status.rb +239 -0
  119. data/lib/onelogin/models/error_status_errors_inner.rb +230 -0
  120. data/lib/onelogin/models/factor_inner.rb +323 -0
  121. data/lib/onelogin/models/factor_inner_factor_data.rb +231 -0
  122. data/lib/onelogin/models/generate_mfa_token200_response.rb +250 -0
  123. data/lib/onelogin/models/generate_mfa_token422_response.rb +246 -0
  124. data/lib/onelogin/models/generate_mfa_token422_response_details.rb +221 -0
  125. data/lib/onelogin/models/generate_mfa_token_request.rb +230 -0
  126. data/lib/onelogin/models/generate_saml_assertion_request.rb +280 -0
  127. data/lib/onelogin/models/generate_token200_response.rb +264 -0
  128. data/lib/onelogin/models/generate_token400_response.rb +219 -0
  129. data/lib/onelogin/models/generate_token_request.rb +253 -0
  130. data/lib/onelogin/models/get_authorization_server200_response.rb +246 -0
  131. data/lib/onelogin/models/get_available_factors200_response_inner.rb +240 -0
  132. data/lib/onelogin/models/get_client_apps200_response_inner.rb +248 -0
  133. data/lib/onelogin/models/get_client_apps200_response_inner_scopes_inner.rb +237 -0
  134. data/lib/onelogin/models/get_rate_limit200_response.rb +228 -0
  135. data/lib/onelogin/models/get_rate_limit200_response_data.rb +237 -0
  136. data/lib/onelogin/models/get_risk_score200_response.rb +256 -0
  137. data/lib/onelogin/models/get_risk_score400_response.rb +221 -0
  138. data/lib/onelogin/models/get_risk_score_request.rb +291 -0
  139. data/lib/onelogin/models/get_score_insights200_response.rb +228 -0
  140. data/lib/onelogin/models/get_score_insights200_response_scores.rb +255 -0
  141. data/lib/onelogin/models/get_user_apps200_response_inner.rb +335 -0
  142. data/lib/onelogin/models/hook.rb +462 -0
  143. data/lib/onelogin/models/hook_conditions_inner.rb +237 -0
  144. data/lib/onelogin/models/hook_options.rb +238 -0
  145. data/lib/onelogin/models/hook_status.rb +228 -0
  146. data/lib/onelogin/models/id.rb +219 -0
  147. data/lib/onelogin/models/list_access_token_claims200_response_inner.rb +293 -0
  148. data/lib/onelogin/models/list_actions200_response_inner.rb +230 -0
  149. data/lib/onelogin/models/list_app_users200_response_inner.rb +255 -0
  150. data/lib/onelogin/models/list_authorization_servers200_response_inner.rb +246 -0
  151. data/lib/onelogin/models/list_authorization_servers200_response_inner_configuration.rb +230 -0
  152. data/lib/onelogin/models/list_condition_operators200_response_inner.rb +230 -0
  153. data/lib/onelogin/models/list_condition_values200_response_inner.rb +228 -0
  154. data/lib/onelogin/models/list_conditions200_response_inner.rb +230 -0
  155. data/lib/onelogin/models/list_mapping_condition_operators200_response_inner.rb +230 -0
  156. data/lib/onelogin/models/list_mapping_conditions200_response_inner.rb +230 -0
  157. data/lib/onelogin/models/list_scopes200_response_inner.rb +237 -0
  158. data/lib/onelogin/models/log.rb +248 -0
  159. data/lib/onelogin/models/mapping.rb +342 -0
  160. data/lib/onelogin/models/registration.rb +274 -0
  161. data/lib/onelogin/models/remove_role_users_request.rb +221 -0
  162. data/lib/onelogin/models/revoke_token_request.rb +219 -0
  163. data/lib/onelogin/models/risk_device.rb +221 -0
  164. data/lib/onelogin/models/risk_rule.rb +325 -0
  165. data/lib/onelogin/models/risk_user.rb +248 -0
  166. data/lib/onelogin/models/role.rb +266 -0
  167. data/lib/onelogin/models/rule.rb +317 -0
  168. data/lib/onelogin/models/rule_id.rb +219 -0
  169. data/lib/onelogin/models/schema.rb +441 -0
  170. data/lib/onelogin/models/schema1.rb +265 -0
  171. data/lib/onelogin/models/schema1_added_by.rb +228 -0
  172. data/lib/onelogin/models/schema_provisioning.rb +220 -0
  173. data/lib/onelogin/models/session.rb +221 -0
  174. data/lib/onelogin/models/set_role_apps200_response_inner.rb +220 -0
  175. data/lib/onelogin/models/source.rb +230 -0
  176. data/lib/onelogin/models/status.rb +246 -0
  177. data/lib/onelogin/models/status1.rb +237 -0
  178. data/lib/onelogin/models/status2.rb +219 -0
  179. data/lib/onelogin/models/status2_status.rb +246 -0
  180. data/lib/onelogin/models/track_event_request.rb +316 -0
  181. data/lib/onelogin/models/update_authorization_server400_response.rb +246 -0
  182. data/lib/onelogin/models/update_client_app_request.rb +221 -0
  183. data/lib/onelogin/models/update_environment_variable_request.rb +225 -0
  184. data/lib/onelogin/models/update_role200_response.rb +219 -0
  185. data/lib/onelogin/models/user.rb +615 -0
  186. data/lib/onelogin/models/verify_enrollment_request.rb +219 -0
  187. data/lib/onelogin/models/verify_factor_request.rb +230 -0
  188. data/lib/onelogin/models/verify_factor_saml200_response.rb +230 -0
  189. data/lib/onelogin/models/verify_factor_saml_request.rb +275 -0
  190. data/lib/onelogin/models/verify_factor_voice200_response_inner.rb +271 -0
  191. data/lib/onelogin/version.rb +13 -1
  192. data/lib/onelogin.rb +130 -1
  193. data/onelogin.gemspec +35 -43
  194. data/spec/api/default_api_spec.rb +1259 -0
  195. data/spec/api_client_spec.rb +226 -0
  196. data/spec/configuration_spec.rb +42 -0
  197. data/spec/models/action_spec.rb +58 -0
  198. data/spec/models/activate_factor_request_spec.rb +52 -0
  199. data/spec/models/add_access_token_claim_request_spec.rb +46 -0
  200. data/spec/models/add_client_app_request_spec.rb +40 -0
  201. data/spec/models/add_role_users200_response_inner_spec.rb +34 -0
  202. data/spec/models/add_scope_request_spec.rb +40 -0
  203. data/spec/models/auth_method_spec.rb +28 -0
  204. data/spec/models/auth_server_configuration_spec.rb +52 -0
  205. data/spec/models/client_app_spec.rb +40 -0
  206. data/spec/models/condition_spec.rb +46 -0
  207. data/spec/models/connector_spec.rb +58 -0
  208. data/spec/models/create_authorization_server_request_spec.rb +46 -0
  209. data/spec/models/create_environment_variable_request_spec.rb +40 -0
  210. data/spec/models/create_roles201_response_inner_spec.rb +34 -0
  211. data/spec/models/device_spec.rb +58 -0
  212. data/spec/models/enroll_factor_request_spec.rb +64 -0
  213. data/spec/models/envvar_spec.rb +52 -0
  214. data/spec/models/error_status_errors_inner_spec.rb +40 -0
  215. data/spec/models/error_status_spec.rb +46 -0
  216. data/spec/models/factor_inner_factor_data_spec.rb +40 -0
  217. data/spec/models/factor_inner_spec.rb +80 -0
  218. data/spec/models/generate_mfa_token200_response_spec.rb +52 -0
  219. data/spec/models/generate_mfa_token422_response_details_spec.rb +34 -0
  220. data/spec/models/generate_mfa_token422_response_spec.rb +52 -0
  221. data/spec/models/generate_mfa_token_request_spec.rb +40 -0
  222. data/spec/models/generate_saml_assertion_request_spec.rb +58 -0
  223. data/spec/models/generate_token200_response_spec.rb +64 -0
  224. data/spec/models/generate_token400_response_spec.rb +34 -0
  225. data/spec/models/generate_token_request_spec.rb +38 -0
  226. data/spec/models/get_authorization_server200_response_spec.rb +52 -0
  227. data/spec/models/get_available_factors200_response_inner_spec.rb +46 -0
  228. data/spec/models/get_client_apps200_response_inner_scopes_inner_spec.rb +46 -0
  229. data/spec/models/get_client_apps200_response_inner_spec.rb +52 -0
  230. data/spec/models/get_rate_limit200_response_data_spec.rb +46 -0
  231. data/spec/models/get_rate_limit200_response_spec.rb +40 -0
  232. data/spec/models/get_risk_score200_response_spec.rb +40 -0
  233. data/spec/models/get_risk_score400_response_spec.rb +34 -0
  234. data/spec/models/get_risk_score_request_spec.rb +70 -0
  235. data/spec/models/get_score_insights200_response_scores_spec.rb +58 -0
  236. data/spec/models/get_score_insights200_response_spec.rb +40 -0
  237. data/spec/models/get_user_apps200_response_inner_spec.rb +84 -0
  238. data/spec/models/hook_conditions_inner_spec.rb +46 -0
  239. data/spec/models/hook_options_spec.rb +46 -0
  240. data/spec/models/hook_spec.rb +122 -0
  241. data/spec/models/hook_status_spec.rb +40 -0
  242. data/spec/models/id_spec.rb +34 -0
  243. data/spec/models/list_access_token_claims200_response_inner_spec.rb +82 -0
  244. data/spec/models/list_actions200_response_inner_spec.rb +40 -0
  245. data/spec/models/list_app_users200_response_inner_spec.rb +58 -0
  246. data/spec/models/list_authorization_servers200_response_inner_configuration_spec.rb +40 -0
  247. data/spec/models/list_authorization_servers200_response_inner_spec.rb +52 -0
  248. data/spec/models/list_condition_operators200_response_inner_spec.rb +40 -0
  249. data/spec/models/list_condition_values200_response_inner_spec.rb +40 -0
  250. data/spec/models/list_conditions200_response_inner_spec.rb +40 -0
  251. data/spec/models/list_mapping_condition_operators200_response_inner_spec.rb +40 -0
  252. data/spec/models/list_mapping_conditions200_response_inner_spec.rb +40 -0
  253. data/spec/models/list_scopes200_response_inner_spec.rb +46 -0
  254. data/spec/models/log_spec.rb +52 -0
  255. data/spec/models/mapping_spec.rb +74 -0
  256. data/spec/models/registration_spec.rb +50 -0
  257. data/spec/models/remove_role_users_request_spec.rb +34 -0
  258. data/spec/models/revoke_token_request_spec.rb +34 -0
  259. data/spec/models/risk_device_spec.rb +34 -0
  260. data/spec/models/risk_rule_spec.rb +78 -0
  261. data/spec/models/risk_user_spec.rb +46 -0
  262. data/spec/models/role_spec.rb +58 -0
  263. data/spec/models/rule_id_spec.rb +34 -0
  264. data/spec/models/rule_spec.rb +74 -0
  265. data/spec/models/schema1_added_by_spec.rb +40 -0
  266. data/spec/models/schema1_spec.rb +64 -0
  267. data/spec/models/schema_provisioning_spec.rb +34 -0
  268. data/spec/models/schema_spec.rb +152 -0
  269. data/spec/models/session_spec.rb +34 -0
  270. data/spec/models/set_role_apps200_response_inner_spec.rb +34 -0
  271. data/spec/models/source_spec.rb +40 -0
  272. data/spec/models/status1_spec.rb +46 -0
  273. data/spec/models/status2_spec.rb +34 -0
  274. data/spec/models/status2_status_spec.rb +52 -0
  275. data/spec/models/status_spec.rb +52 -0
  276. data/spec/models/track_event_request_spec.rb +82 -0
  277. data/spec/models/update_authorization_server400_response_spec.rb +52 -0
  278. data/spec/models/update_client_app_request_spec.rb +34 -0
  279. data/spec/models/update_environment_variable_request_spec.rb +34 -0
  280. data/spec/models/update_role200_response_spec.rb +34 -0
  281. data/spec/models/user_spec.rb +258 -0
  282. data/spec/models/verify_enrollment_request_spec.rb +34 -0
  283. data/spec/models/verify_factor_request_spec.rb +40 -0
  284. data/spec/models/verify_factor_saml200_response_spec.rb +40 -0
  285. data/spec/models/verify_factor_saml_request_spec.rb +58 -0
  286. data/spec/models/verify_factor_voice200_response_inner_spec.rb +50 -0
  287. data/spec/spec_helper.rb +111 -0
  288. metadata +404 -127
  289. data/.github/workflows/git-secrets-public.yml +0 -55
  290. data/.github/workflows/test.yml +0 -25
  291. data/.gitignore +0 -13
  292. data/bin/console +0 -14
  293. data/bin/setup +0 -6
  294. data/examples/Gemfile +0 -3
  295. data/examples/Gemfile.lock +0 -29
  296. data/examples/README.md +0 -19
  297. data/examples/all-users-to-csv.rb +0 -48
  298. data/examples/another-get-all-login-events-of-last-day-to-csv.rb +0 -141
  299. data/examples/create-user.rb +0 -16
  300. data/examples/events-to-csv.rb +0 -94
  301. data/examples/get-all-login-events-of-last-day-to-csv.rb +0 -88
  302. data/examples/last-app-user-login-to-csv.rb +0 -72
  303. data/examples/list-users.rb +0 -15
  304. data/lib/onelogin/api/apiexception.rb +0 -13
  305. data/lib/onelogin/api/client.rb +0 -3019
  306. data/lib/onelogin/api/cursor.rb +0 -117
  307. data/lib/onelogin/api/models/app.rb +0 -22
  308. data/lib/onelogin/api/models/auth_factor.rb +0 -16
  309. data/lib/onelogin/api/models/connector_basic.rb +0 -20
  310. data/lib/onelogin/api/models/device.rb +0 -18
  311. data/lib/onelogin/api/models/embed_app.rb +0 -31
  312. data/lib/onelogin/api/models/event.rb +0 -54
  313. data/lib/onelogin/api/models/event_type.rb +0 -17
  314. data/lib/onelogin/api/models/factor_enrollment_response.rb +0 -22
  315. data/lib/onelogin/api/models/group.rb +0 -17
  316. data/lib/onelogin/api/models/mfa.rb +0 -26
  317. data/lib/onelogin/api/models/mfa_token.rb +0 -18
  318. data/lib/onelogin/api/models/onelogin_app.rb +0 -62
  319. data/lib/onelogin/api/models/onelogin_app_basic.rb +0 -51
  320. data/lib/onelogin/api/models/onelogin_app_v1.rb +0 -22
  321. data/lib/onelogin/api/models/onelogin_token.rb +0 -20
  322. data/lib/onelogin/api/models/otp_device.rb +0 -25
  323. data/lib/onelogin/api/models/privilege.rb +0 -51
  324. data/lib/onelogin/api/models/rate_limit.rb +0 -17
  325. data/lib/onelogin/api/models/role.rb +0 -16
  326. data/lib/onelogin/api/models/saml_endpoint_response.rb +0 -18
  327. data/lib/onelogin/api/models/session_token_info.rb +0 -21
  328. data/lib/onelogin/api/models/session_token_mfa_info.rb +0 -26
  329. data/lib/onelogin/api/models/statement.rb +0 -36
  330. data/lib/onelogin/api/models/user.rb +0 -135
  331. data/lib/onelogin/api/models/user_data.rb +0 -13
  332. data/lib/onelogin/api/models/user_metadata.rb +0 -13
  333. data/lib/onelogin/api/models.rb +0 -26
  334. data/lib/onelogin/api/util/constants.rb +0 -177
  335. data/lib/onelogin/api/util/parser.rb +0 -56
  336. data/lib/onelogin/api/util/url_builder.rb +0 -24
  337. data/lib/onelogin/api/util.rb +0 -13
  338. data/lib/onelogin/api.rb +0 -2
@@ -1,117 +0,0 @@
1
- require 'onelogin/api/apiexception'
2
- require 'onelogin/api/util'
3
-
4
- # Cursor
5
- #
6
- # Used for paginating requests to the OneLogin API
7
- #
8
- # Returns an enumerable object
9
- class Cursor
10
- include Enumerable
11
- include OneLogin::Api::Util
12
-
13
- # Create a new instance of the Cursor.
14
- #
15
- # @param url [String] The url of the API endpoint
16
- # @param options [Hash] Configuation options
17
- #
18
- def initialize(client, url, options = {})
19
- @client = client
20
- @url = url
21
- @options = options
22
-
23
- @model = options[:model]
24
- @headers = options[:headers] || {}
25
- @params = options[:params] || {}
26
- @max_results = options[:max_results]
27
- @container = options[:container] || 'data'
28
-
29
- @collection = []
30
- @after_cursor = options.fetch(:after_cursor, nil)
31
- end
32
-
33
- def each(start = 0, &proc)
34
- return to_enum(:each, start) unless block_given?
35
-
36
- Array(@collection[start..-1]).each do |item|
37
- if @model
38
- yield(@model.new(item))
39
- else
40
- yield(item)
41
- end
42
- end
43
-
44
- unless last?
45
- start = [@collection.size, start].max
46
-
47
- fetch_next_page
48
-
49
- each(start, &proc)
50
- end
51
- end
52
-
53
- private
54
-
55
- def fetch_next_page
56
- @params = @params.merge(after_cursor: @after_cursor) if @after_cursor
57
- @client.prepare_token
58
-
59
- response = @client.class.get(
60
- @url,
61
- headers: @headers,
62
- query: @params
63
- )
64
-
65
- json = response.parsed_response
66
-
67
- # HTTParty picks its parser from Content-Type, so a gateway or proxy error
68
- # page comes back as a String and every has_key? below would blow up with a
69
- # NoMethodError instead of a usable ApiException.
70
- if json.nil? || !json.is_a?(Hash)
71
- raise OneLogin::Api::ApiException.new("Response could not be parsed", response.code)
72
- elsif !json.has_key?(@container) && json.has_key?('status') && json["status"]["error"] == true
73
- raise OneLogin::Api::ApiException.new(extract_error_message_from_response(response), json["status"]["code"])
74
- elsif !json.has_key?(@container) && json.has_key?('statusCode')
75
- raise OneLogin::Api::ApiException.new(extract_error_message_from_response(response), json["statusCode"])
76
- else
77
-
78
- results = json[@container]
79
- if @container == "data"
80
- results = results.flatten
81
- end
82
-
83
- @collection += if results_remaining < results.size
84
- results.slice(0, results_remaining)
85
- else
86
- results
87
- end
88
-
89
- @after_cursor = after_cursor(json)
90
- @last_cursor_empty = @after_cursor.nil?
91
- end
92
- end
93
-
94
- def after_cursor(json)
95
- value = nil
96
- if json.has_key?('pagination')
97
- value = json['pagination'].fetch('after_cursor', nil)
98
- elsif json.has_key?('afterCursor')
99
- value = json['afterCursor']
100
- end
101
- value
102
- end
103
-
104
- def results_remaining
105
- @max_results - @collection.size
106
- end
107
-
108
- def fetch_completed?
109
- return false unless @max_results
110
-
111
- @collection.size >= @max_results
112
- end
113
-
114
- def last?
115
- @last_cursor_empty || fetch_completed?
116
- end
117
- end
@@ -1,22 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class App
6
-
7
- attr_accessor :id, :name, :icon, :provisioned
8
- attr_accessor :extension, :login_id, :personal
9
-
10
- def initialize(data)
11
- @id = data['id']
12
- @name = data['name']
13
- @icon = data['icon']
14
- @provisioned = data['provisioned']
15
- @extension = data['extension']
16
- @login_id = data['login_id']
17
- @personal = data['personal']
18
- end
19
- end
20
- end
21
- end
22
- end
@@ -1,16 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class AuthFactor
6
-
7
- attr_accessor :id, :name
8
-
9
- def initialize(data)
10
- @id = data['factor_id']
11
- @name = data['name'].to_s
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,20 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class ConnectorBasic
6
-
7
- attr_accessor :id, :name, :auth_method
8
- attr_accessor :icon_url, :allows_new_parameters
9
-
10
- def initialize(data)
11
- @id = data['id']
12
- @name = data['name']
13
- @icon_url = data['icon_url']
14
- @auth_method = data['auth_method']
15
- @allows_new_parameters = data['allows_new_parameters']
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,18 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class Device
6
-
7
- attr_accessor :id, :type, :duo_api_hostname, :duo_sig_request
8
-
9
- def initialize(data)
10
- @id = data['device_id']
11
- @type = data['device_type'].to_s
12
- @duo_api_hostname = data['duo_api_hostname']
13
- @duo_sig_request = data['duo_sig_request']
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,31 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class EmbedApp
6
-
7
- attr_accessor :id, :name, :icon, :provisioned, :extension_required, :login_id, :personal
8
-
9
- def initialize(data)
10
- @data = data
11
-
12
- @id = data['id'].to_i
13
- @name = data['name'].to_s
14
- @icon = data['icon']
15
- @provisioned = data['provisioned'].to_i
16
- @extension_required = truthy?('extension_required')
17
- @login_id = data['login_id'].to_i
18
- @personal = truthy?('personal')
19
- end
20
-
21
- private
22
-
23
- def truthy?(attribute_name)
24
- return false unless @data[attribute_name]
25
-
26
- ['yes', 'true', '1'].include? @data[attribute_name].to_s.downcase
27
- end
28
- end
29
- end
30
- end
31
- end
@@ -1,54 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class Event
6
-
7
- attr_accessor :id, :created_at, :account_id, :user_id, :user_name, :event_type_id,
8
- :notes, :ipaddr, :actor_user_id, :actor_user_name, :assuming_acting_user_id,
9
- :role_id, :role_name, :app_id, :app_name, :group_id, :group_name, :otp_device_id,
10
- :otp_device_name, :policy_id, :policy_name, :actor_system, :custom_message,
11
- :operation_name, :directory_sync_run_id, :directory_id, :resolution, :client_id,
12
- :resource_type_id, :error_description, :risk_score, :risk_reasons, :risk_cookie_id, :browser_fingerprint
13
-
14
- def initialize(data)
15
- @id = data['id']
16
- @created_at = data['created_at']? Time.iso8601(data['created_at']) : nil
17
- @account_id = data['account_id']
18
- @user_id = data['user_id']
19
- @user_name = data['user_name'].to_s
20
- @event_type_id = data['event_type_id']
21
- @notes = data['notes'].to_s
22
- @ipaddr = data['ipaddr'].to_s
23
- @actor_user_id = data['actor_user_id']
24
- @actor_user_name = data['actor_user_name'].to_s
25
- @assuming_acting_user_id = data['assuming_acting_user_id']
26
- @role_id = data['role_id']
27
- @role_name = data['role_name'].to_s
28
- @app_id = data['app_id']
29
- @app_name = data['app_name'].to_s
30
- @group_id = data['group_id']
31
- @group_name = data['group_name'].to_s
32
- @otp_device_id = data['otp_device_id']
33
- @otp_device_name = data['otp_device_name'].to_s
34
- @policy_id = data['policy_id']
35
- @policy_name = data['policy_name'].to_s
36
- @actor_system = data['actor_system'].to_s
37
- @custom_message = data['custom_message'].to_s
38
- @operation_name = data['operation_name'].to_s
39
- @directory_sync_run_id = data['directory_sync_run_id']
40
- @directory_id = data['directory_id']
41
- @resolution = data['resolution'].to_s
42
- @client_id = data['client_id']
43
- @resource_type_id = data['resource_type_id']
44
- @error_description = data['error_description'].to_s
45
- @proxy_ip = data['proxy_ip'].to_s
46
- @risk_score = data['risk_score']
47
- @risk_reasons = data['risk_reasons'].to_s
48
- @risk_cookie_id = data['risk_cookie_id']
49
- @browser_fingerprint = data['browser_fingerprint']
50
- end
51
- end
52
- end
53
- end
54
- end
@@ -1,17 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class EventType
6
-
7
- attr_accessor :id, :name, :description
8
-
9
- def initialize(data)
10
- @id = data['id']
11
- @name = data['name'].to_s
12
- @description = data['description'].to_s
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,22 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class FactorEnrollmentResponse
6
-
7
- attr_accessor :device_id, :user_id, :active, :auth_factor_name,
8
- :type_display_name, :user_display_name, :state_token
9
-
10
- def initialize(data)
11
- @device_id = data['device_id']? data['device_id'].to_i : nil
12
- @user_id = data['id']? data['id'].to_i : nil
13
- @active = data['active']
14
- @auth_factor_name = data['auth_factor_name']
15
- @type_display_name = data['type_display_name']
16
- @user_display_name = data['user_display_name']
17
- @state_token = data['state_token']
18
- end
19
- end
20
- end
21
- end
22
- end
@@ -1,17 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class Group
6
-
7
- attr_accessor :id, :name, :reference
8
-
9
- def initialize(data)
10
- @id = data['id']
11
- @name = data['name'].to_s
12
- @reference = data['reference'].to_s
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,26 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class MFA
6
-
7
- attr_accessor :state_token, :callback_url, :user, :devices
8
-
9
- def initialize(data)
10
- unless data['user'].empty?
11
- @user = OneLogin::Api::Models::User.new(data['user']) # Partial info
12
- end
13
- @state_token = data['state_token'].to_s
14
- @callback_url = data['callback_url'].to_s
15
- @devices = []
16
- unless data['devices'].empty?
17
- data['devices'].each do |device_data|
18
- @devices << OneLogin::Api::Models::Device.new(device_data)
19
- end
20
- end
21
- end
22
- end
23
-
24
- end
25
- end
26
- end
@@ -1,18 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class MFAToken
6
-
7
- attr_accessor :value, :expires_at, :reusable
8
-
9
- def initialize(data)
10
- @value = data['mfa_token']
11
- @expires_at = data['expires_at']
12
- @reusable = data['reusable']
13
- end
14
- end
15
-
16
- end
17
- end
18
- end
@@ -1,62 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class OneLoginApp
6
-
7
- attr_accessor :name, :visible, :policy_id, :is_available,
8
- :parameters, :allow_assumed_signin,
9
- :configuration, :notes, :description
10
-
11
-
12
- attr_reader :created_at, :updated_at, :icon, :provisioning,
13
- :connector_id, :sso, :auth_method, :id, :tab_id
14
-
15
- def initialize(data)
16
- @name = data['name']
17
- @visible = data['visible']
18
- @policy_id = data['policy_id']? data['policy_id'].to_i : nil
19
- @parameters = data['parameters']
20
- @allow_assumed_signin = data['allow_assumed_signin']
21
- @configuration = data['configuration']
22
- @notes = data['notes']
23
- @description = data['description']
24
-
25
- @created_at = data['created_at']
26
- @updated_at = data['updated_at']
27
- @icon = data['icon_url']
28
- @provisioning = data['provisioning']
29
- @connector_id = data['connector_id']? data['connector_id'].to_i : nil
30
- @sso = data['sso']
31
- @auth_method = data['auth_method']
32
- @tab_id = data['tab_id']? data['tab_id'].to_i : nil
33
- @id = data['id']? data['id'].to_i : nil
34
- end
35
-
36
- def get_auth_method_name
37
- auth_method_name = nil
38
- case @auth_method
39
- when 0
40
- auth_method_name = "PASSWORD"
41
- when 1
42
- auth_method_name = "OPENID"
43
- when 2
44
- auth_method_name = "SAML"
45
- when 3
46
- auth_method_name = "API"
47
- when 4
48
- auth_method_name = "GOOGLE"
49
- when 6
50
- auth_method_name = "BASIC_AUTH"
51
- when 7
52
- auth_method_name = "WSFED"
53
- when 8
54
- auth_method_name = "OIDC"
55
- end
56
-
57
- auth_method_name
58
- end
59
- end
60
- end
61
- end
62
- end
@@ -1,51 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class OneLoginAppBasic
6
-
7
- attr_accessor :name, :visible,
8
- :description
9
-
10
- attr_reader :created_at, :updated_at,
11
- :connector_id, :auth_method, :id
12
-
13
- def initialize(data)
14
- @id = data['id']? data['id'].to_i : nil
15
- @name = data['name']
16
- @description = data['description']
17
- @auth_method = data['auth_method']
18
- @connector_id = data['connector_id']? data['connector_id'].to_i : nil
19
- @visible = data['visible']
20
- @created_at = data['created_at']
21
- @updated_at = data['updated_at']
22
-
23
- end
24
-
25
- def get_auth_method_name
26
- auth_method_name = nil
27
- case @auth_method
28
- when 0
29
- auth_method_name = "PASSWORD"
30
- when 1
31
- auth_method_name = "OPENID"
32
- when 2
33
- auth_method_name = "SAML"
34
- when 3
35
- auth_method_name = "API"
36
- when 4
37
- auth_method_name = "GOOGLE"
38
- when 6
39
- auth_method_name = "BASIC_AUTH"
40
- when 7
41
- auth_method_name = "WSFED"
42
- when 8
43
- auth_method_name = "OIDC"
44
- end
45
-
46
- auth_method_name
47
- end
48
- end
49
- end
50
- end
51
- end
@@ -1,22 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class OneLoginApp
6
-
7
- attr_accessor :id, :connector_id, :name, :extension
8
- attr_accessor :icon, :visible, :provisioning
9
-
10
- def initialize(data)
11
- @id = data['id']
12
- @connector_id = data['connector_id']
13
- @name = data['name']
14
- @extension = data['extension']
15
- @icon = data['icon']
16
- @visible = data['visible']
17
- @provisioning = data['provisioning']
18
- end
19
- end
20
- end
21
- end
22
- end
@@ -1,20 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class OneLoginToken
6
-
7
- attr_accessor :access_token, :refresh_token, :account_id, :token_type, :created_at, :expires_in
8
-
9
- def initialize(data)
10
- @access_token = data['access_token'].to_s
11
- @refresh_token = data['refresh_token'].to_s
12
- @account_id = data['account_id']
13
- @token_type = data['token_type']
14
- @created_at = Time.iso8601(data['created_at'])
15
- @expires_in = data['expires_in']
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,25 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class OTPDevice
6
-
7
- attr_accessor :id, :active, :default, :auth_factor_name, :phone_number,
8
- :type_display_name, :needs_trigger, :user_display_name,
9
- :state_token
10
-
11
- def initialize(data)
12
- @id = data['id']? data['id'].to_i : nil
13
- @active = data['active']
14
- @default = data['default']
15
- @auth_factor_name = data['auth_factor_name']
16
- @phone_number = data['phone_number']
17
- @type_display_name = data['type_display_name']
18
- @needs_trigger = data['needs_trigger']
19
- @user_display_name = data['user_display_name']
20
- @state_token = data['state_token']
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,51 +0,0 @@
1
- require 'onelogin/api/models/statement'
2
-
3
- module OneLogin
4
- module Api
5
- module Models
6
-
7
- class Privilege
8
-
9
- attr_accessor :id, :name, :version, :statements
10
-
11
- def initialize(*args)
12
- if args.length == 1
13
- self.from_data(args[0])
14
- else
15
- self.from_values(args[0],args[1], args[2], args[3])
16
- end
17
- end
18
-
19
- def from_data(data)
20
- @id = data['id']
21
- @name = data['name']
22
- @version = data['privilege']['Version']
23
- statements_data = data['privilege']['Statement']
24
- @statements = []
25
- for statement_data in statements_data
26
- @statements << Statement.new(statement_data)
27
- end
28
- end
29
-
30
- def from_values(id, name, version, statements)
31
- @id = id
32
- @name = name
33
- @version = version
34
- @statements = []
35
- for statement in statements
36
- if statement.instance_of?(Statement)
37
- @statements << statement
38
- elsif statement.instance_of?(Hash) && statement.has_key?('Effect') && statement.has_key?('Action') && statement.has_key?('Scope')
39
- @statements << Statement.new(statement['Effect'], statement['Action'], statement['Scope'])
40
- end
41
- end
42
- end
43
-
44
- def get_valid_actions
45
- return
46
- Constants.VALID_ACTIONS
47
- end
48
- end
49
- end
50
- end
51
- end
@@ -1,17 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class RateLimit
6
-
7
- attr_accessor :limit, :remaining, :reset
8
-
9
- def initialize(data)
10
- @limit = data['X-RateLimit-Limit']
11
- @remaining = data['X-RateLimit-Remaining']
12
- @reset = data['X-RateLimit-Reset']
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,16 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class Role
6
-
7
- attr_accessor :id, :name
8
-
9
- def initialize(data)
10
- @id = data['id']
11
- @name = data['name'].to_s
12
- end
13
- end
14
- end
15
- end
16
- end
@@ -1,18 +0,0 @@
1
- module OneLogin
2
- module Api
3
- module Models
4
-
5
- class SAMLEndpointResponse
6
-
7
- attr_accessor :type, :message, :mfa, :saml_response
8
-
9
- def initialize(status_type, status_message)
10
- @type = status_type
11
- @message = status_message
12
- @saml_response = nil
13
- @mfa = nil
14
- end
15
- end
16
- end
17
- end
18
- end