auth0 5.5.0 → 5.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (206) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/Gemfile +1 -0
  4. data/README.md +10 -8
  5. data/auth0.gemspec +1 -1
  6. data/lib/auth0/api/authentication_endpoints.rb +40 -16
  7. data/lib/auth0/api/v2/actions.rb +210 -0
  8. data/lib/auth0/api/v2/grants.rb +49 -0
  9. data/lib/auth0/api/v2.rb +4 -0
  10. data/lib/auth0/exception.rb +12 -0
  11. data/lib/auth0/mixins/api_token_struct.rb +0 -1
  12. data/lib/auth0/mixins/httpproxy.rb +10 -5
  13. data/lib/auth0/mixins/initializer.rb +1 -3
  14. data/lib/auth0/mixins/token_management.rb +32 -0
  15. data/lib/auth0/mixins/validation.rb +1 -1
  16. data/lib/auth0/mixins.rb +2 -0
  17. data/lib/auth0/version.rb +1 -1
  18. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_change_password/should_trigger_a_password_reset.yml +53 -23
  19. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_incorrect_email.yml +49 -18
  20. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_incorrect_password.yml +49 -18
  21. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_invalid_audience.yml +46 -15
  22. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_login_successfully_with_a_custom_audience.yml +49 -79
  23. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_login_successfully_with_a_default_scope.yml +49 -80
  24. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_saml_metadata/should_retrieve_SAML_metadata.yml +74 -21
  25. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_userinfo/should_fail_as_not_authorized.yml +53 -14
  26. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_userinfo/should_return_the_userinfo.yml +106 -48
  27. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_wsfed_metadata/should_retrieve_WSFED_metadata.yml +62 -19
  28. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/create_test_user.yml +57 -22
  29. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/delete_test_user.yml +38 -20
  30. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_add_token_to_blacklist/should_add_a_token_to_the_blacklist.yml +37 -19
  31. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_blacklisted_tokens/should_get_the_added_token_from_the_blacklist.yml +38 -23
  32. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_at_least_1_result.yml +42 -26
  33. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_test_client_grant.yml +42 -26
  34. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_delete_client_grant/should_delete_the_test_client_grant.yml +38 -20
  35. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_patch_client_grant/should_update_the_test_client_grant.yml +39 -27
  36. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/create_test_client.yml +44 -82
  37. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/create_test_client_grant.yml +39 -27
  38. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/delete_test_client.yml +38 -20
  39. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/delete_test_client_grant.yml +38 -20
  40. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/_filters/should_exclude_and_include_fields_properly.yml +43 -56
  41. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/_filters/should_include_the_specified_fields.yml +39 -28
  42. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/should_get_the_test_client.yml +43 -57
  43. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_exclude_fields_not_specified.yml +43 -24
  44. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_exclude_the_specified_fields.yml +236 -96
  45. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_include_the_specified_fields.yml +52 -27
  46. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_paginate_results.yml +39 -25
  47. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/should_get_at_least_one_client.yml +235 -96
  48. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_delete_client/should_delete_the_test_client_without_an_error.yml +38 -20
  49. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_patch_client/should_update_the_client_with_the_correct_attributes.yml +43 -57
  50. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/create_test_client.yml +45 -82
  51. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/_filters/should_exclude_the_fields_indicated.yml +15 -16
  52. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/_filters/should_include_the_fields_indicated.yml +15 -16
  53. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/should_find_the_correct_connection.yml +15 -16
  54. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_include_previously-created_connection_when_filtered.yml +14 -15
  55. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_should_exclude_the_fields_indicated_from_filtered_results.yml +14 -15
  56. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_should_include_the_fields_indicated_from_filtered_results.yml +14 -15
  57. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/should_include_the_previously_created_connection.yml +15 -15
  58. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/should_not_be_empty.yml +15 -15
  59. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_delete_connection/should_delete_the_connection.yml +15 -16
  60. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_delete_connection_user/should_delete_the_user_created.yml +29 -27
  61. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_update_connection/should_update_the_connection.yml +15 -16
  62. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_connection.yml +16 -17
  63. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_user.yml +40 -32
  64. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_credential.yml +40 -30
  65. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_user.yml +40 -32
  66. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_user.yml +38 -20
  67. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_configure_provider/should_configure_a_new_email_provider.yml +37 -28
  68. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_delete_the_existing_email_provider_without_an_error.yml +37 -19
  69. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_throw_an_error_trying_to_get_the_email_provider.yml +34 -16
  70. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/_filters/should_get_the_existing_email_provider_with_specific_fields.yml +36 -27
  71. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/_filters/should_get_the_existing_email_provider_without_specific_fields.yml +36 -28
  72. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/should_get_the_existing_email_provider.yml +36 -28
  73. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_update_provider/should_update_the_existing_email_provider.yml +36 -28
  74. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/delete_existing_provider.yml +37 -19
  75. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_export_users_and_get_job/should_create_an_export_users_job_successfully.yml +38 -23
  76. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_export_users_and_get_job/should_get_the_export_users_job.yml +76 -46
  77. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_import_users_and_get_job/should_create_an_import_users_job_successfully.yml +46 -25
  78. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_import_users_and_get_job/should_get_the_import_users_job.yml +84 -48
  79. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_create_a_new_verification_email_job.yml +77 -47
  80. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_get_the_completed_verification_email.yml +116 -71
  81. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_reject_an_invalid_client_id.yml +76 -39
  82. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/delete_imported_user.yml +76 -43
  83. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/search_for_connection_id.yml +43 -23
  84. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_log/should_match_the_created_log_entry.yml +224 -196
  85. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_log/should_not_be_empty.yml +224 -196
  86. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_exclude_fields_not_specified.yml +38 -25
  87. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_exclude_the_specified_fields.yml +39 -39
  88. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_have_one_log_entry.yml +41 -40
  89. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_include_the_specified_fields.yml +38 -26
  90. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_from/should_take_one_log_entry.yml +229 -189
  91. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/create_test_user.yml +40 -32
  92. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_disabled_rule.yml +38 -20
  93. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_enabled_rule.yml +38 -20
  94. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_user.yml +38 -20
  95. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_delete_resource_server/should_delete_the_test_server_without_an_error.yml +38 -20
  96. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_patch_resource_server/should_update_the_resource_server_with_the_correct_attributes.yml +39 -24
  97. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_server/should_get_the_test_server.yml +39 -24
  98. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_get_the_test_server.yml +146 -23
  99. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_return_at_least_1_result.yml +146 -23
  100. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_return_the_first_page_of_one_result.yml +131 -24
  101. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/create_test_server.yml +40 -25
  102. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/delete_test_server.yml +38 -20
  103. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_permissions/should_add_a_Permission_to_the_Role_successfully.yml +39 -32
  104. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_users/should_add_a_User_to_the_Role_successfully.yml +38 -31
  105. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_delete_role/should_delete_the_Role_successfully.yml +42 -30
  106. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role/should_get_the_Role_successfully.yml +38 -30
  107. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_exactly_1_Permission.yml +37 -30
  108. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_the_added_Permission_from_the_Role_successfully.yml +37 -30
  109. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_exactly_1_User.yml +37 -30
  110. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_the_added_User_from_the_Role_successfully.yml +37 -30
  111. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_roles/should_get_the_Role_successfully.yml +37 -29
  112. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_remove_role_permissions/should_remove_a_Permission_from_the_Role_successfully.yml +39 -29
  113. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_update_role/should_update_the_Role_successfully.yml +37 -30
  114. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_api.yml +38 -31
  115. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_role.yml +39 -31
  116. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_user.yml +38 -31
  117. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_api.yml +36 -26
  118. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_user.yml +36 -26
  119. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_disabled_rule_without_an_error.yml +38 -20
  120. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_enabled_rule_without_an_error.yml +38 -20
  121. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_fields_not_specified.yml +40 -27
  122. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_specified_fields.yml +40 -27
  123. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_include_the_specified_fields.yml +39 -26
  124. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/should_get_a_specific_rule.yml +40 -27
  125. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_exclude_fields_not_specified.yml +80 -24
  126. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_include_the_specified_fields.yml +82 -25
  127. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_at_least_1_disabled_rule.yml +59 -27
  128. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_at_least_1_enabled_rule.yml +68 -26
  129. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_paginated_results.yml +78 -49
  130. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/should_return_at_least_1_rule.yml +84 -28
  131. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_update_rule/should_update_the_disabled_rule_to_be_enabled.yml +40 -27
  132. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/create_test_disabled_rule.yml +42 -29
  133. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/create_test_enabled_rule.yml +42 -29
  134. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Stats/_active_users/should_have_at_least_one_active_user.yml +38 -23
  135. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Stats/_daily_stats/should_have_at_least_one_stats_entry_for_the_timeframe.yml +38 -27
  136. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings/should_get_the_tenant_settings.yml +72 -59
  137. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings_with_specific_fields/should_exclude_a_field_not_requested.yml +38 -25
  138. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings_with_specific_fields/should_include_the_field_requested.yml +38 -25
  139. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_update_tenant_settings/should_revert_the_tenant_name.yml +72 -58
  140. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_update_tenant_settings/should_update_the_tenant_settings_with_a_new_tenant_name.yml +72 -58
  141. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_email_verification/should_create_an_email_verification_ticket.yml +39 -26
  142. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_password_change/should_create_a_password_change_ticket.yml +39 -26
  143. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/create_test_user.yml +40 -32
  144. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/delete_test_user.yml +38 -20
  145. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_permissions/should_add_a_Permissions_for_a_User_successfully.yml +39 -35
  146. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_roles/should_add_a_Role_to_a_User_successfully.yml +37 -25
  147. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_User_successfully.yml +36 -24
  148. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_secondary_User_successfully.yml +36 -24
  149. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user_provider/should_attempt_to_delete_the_MFA_provider_for_the_User.yml +36 -24
  150. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_enrollments/should_get_Enrollments_for_a_User_successfully.yml +37 -28
  151. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_exactly_1_Permission_for_a_User_successfully.yml +37 -28
  152. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_the_correct_Permission_for_a_User_successfully.yml +37 -28
  153. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_roles/should_get_Roles_for_a_User_successfully.yml +38 -28
  154. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_invalidate_browsers/should_invalidate_MFA_browsers_for_the_User_successfully.yml +36 -24
  155. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_link_user_account/should_link_two_Users_successfully.yml +38 -29
  156. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_the_User_successfully.yml +38 -28
  157. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_permissions/should_remove_a_Permission_from_a_User_successfully.yml +39 -27
  158. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_roles/should_remove_a_Role_from_a_User_successfully.yml +39 -27
  159. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_unlink_user_account/should_unlink_two_Users_successfully.yml +37 -28
  160. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_fields_not_indicated.yml +37 -28
  161. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_the_fields_indicated.yml +37 -28
  162. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_include_the_fields_indicated.yml +37 -28
  163. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/should_retrieve_the_created_user.yml +37 -28
  164. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user_logs/should_get_Logs_for_a_User_successfully.yml +42 -30
  165. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v2_search_engine_query.yml +36 -27
  166. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v3_search_engine_query.yml +36 -27
  167. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_exclude_the_indicated_fields_when_paginated.yml +36 -27
  168. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_include_the_indicated_fields_when_paginated.yml +36 -27
  169. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_not_include_other_fields_when_paginated.yml +36 -27
  170. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_return_the_correct_number_of_results_when_paginated.yml +36 -27
  171. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/should_have_at_least_one_user.yml +37 -27
  172. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_secondary_test_user.yml +38 -29
  173. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_api.yml +38 -29
  174. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_role.yml +39 -29
  175. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_user.yml +38 -29
  176. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_api.yml +36 -24
  177. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_role.yml +42 -28
  178. data/spec/integration/lib/auth0/api/v2/api_client_grants_spec.rb +0 -9
  179. data/spec/integration/lib/auth0/api/v2/api_connections_spec.rb +3 -3
  180. data/spec/integration/lib/auth0/api/v2/api_email_spec.rb +0 -31
  181. data/spec/integration/lib/auth0/api/v2/api_jobs_spec.rb +4 -4
  182. data/spec/integration/lib/auth0/api/v2/api_logs_spec.rb +5 -5
  183. data/spec/integration/lib/auth0/api/v2/api_roles_spec.rb +3 -3
  184. data/spec/integration/lib/auth0/api/v2/api_tickets_spec.rb +4 -4
  185. data/spec/integration/lib/auth0/api/v2/api_user_blocks_spec.rb +8 -5
  186. data/spec/integration/lib/auth0/api/v2/api_users_spec.rb +6 -33
  187. data/spec/lib/auth0/api/v2/actions_spec.rb +312 -0
  188. data/spec/lib/auth0/api/v2/grants_spec.rb +91 -0
  189. data/spec/lib/auth0/client_spec.rb +3 -3
  190. data/spec/lib/auth0/mixins/httpproxy_spec.rb +104 -0
  191. data/spec/lib/auth0/mixins/initializer_spec.rb +84 -4
  192. data/spec/lib/auth0/mixins/token_management_spec.rb +125 -0
  193. data/spec/spec_helper.rb +1 -1
  194. data/spec/support/dummy_class_for_proxy.rb +1 -0
  195. data/spec/support/dummy_class_for_tokens.rb +17 -0
  196. metadata +16 -25
  197. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_check_if_ip_is_blocked/should_return_200_response_code.yml +0 -65
  198. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_remove_ip_block/should_remove_an_IP_successfully.yml +0 -60
  199. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_first_page_of_one_result.yml +0 -66
  200. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_delete_device_credential/should_delete_the_test_credential_without_an_error.yml +0 -54
  201. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/_filter_by_type/should_exclude_the_test_credential.yml +0 -59
  202. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_have_at_least_1_entry.yml +0 -62
  203. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_include_the_test_credential.yml +0 -62
  204. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_credential.yml +0 -54
  205. data/spec/integration/lib/auth0/api/v2/api_anomaly_spec.rb +0 -17
  206. data/spec/integration/lib/auth0/api/v2/api_device_credentials_spec.rb +0 -128
@@ -1,18 +1,36 @@
1
1
  require 'spec_helper'
2
+ require 'timecop'
2
3
 
3
4
  class MockClass
4
5
  attr_reader :token
5
6
  include Auth0::Mixins::Initializer
6
7
  include Auth0::Mixins::HTTPProxy
7
8
  include Auth0::Mixins::Headers
9
+ include Auth0::Mixins::TokenManagement
8
10
  end
9
11
 
10
12
  describe Auth0::Mixins::Initializer do
11
13
  let(:params) { { namespace: 'samples.auth0.com' } }
12
14
  let(:instance) { DummyClassForProxy.send(:include, described_class).new(params) }
15
+ let(:time_now) { Time.now }
16
+
13
17
  context 'api v2' do
18
+ it 'sets retry_count when passed' do
19
+ params[:token] = '123'
20
+ params[:retry_count] = 10
21
+
22
+ expect(instance.instance_variable_get('@retry_count')).to eq(10)
23
+ end
24
+ end
25
+
26
+ context 'token initialization' do
14
27
  before do
15
28
  params[:api_version] = 2
29
+ Timecop.freeze(time_now)
30
+ end
31
+
32
+ after do
33
+ Timecop.return
16
34
  end
17
35
 
18
36
  it 'sets token when access_token is passed' do
@@ -27,11 +45,73 @@ describe Auth0::Mixins::Initializer do
27
45
  expect(instance.instance_variable_get('@token')).to eq('123')
28
46
  end
29
47
 
30
- it 'sets retry_count when passed' do
31
- params[:token] = '123'
32
- params[:retry_count] = 10
48
+ it 'fetches a token if none was given' do
49
+ params[:client_id] = client_id = 'test_client_id'
50
+ params[:client_secret] = client_secret = 'test_client_secret'
51
+ params[:api_identifier] = api_identifier = 'test'
33
52
 
34
- expect(instance.instance_variable_get('@retry_count')).to eq(10)
53
+ payload = {
54
+ grant_type: 'client_credentials',
55
+ client_id: client_id,
56
+ client_secret: client_secret,
57
+ audience: api_identifier
58
+ }
59
+
60
+ expect(RestClient::Request).to receive(:execute).with(hash_including(
61
+ method: :post,
62
+ url: 'https://samples.auth0.com/oauth/token',
63
+ payload: payload.to_json
64
+ ))
65
+ .and_return(StubResponse.new({
66
+ "access_token" => "test",
67
+ "expires_in" => 86400},
68
+ true,
69
+ 200))
70
+
71
+ expect(instance.instance_variable_get('@token')).to eq('test')
72
+ expect(instance.instance_variable_get('@token_expires_at')).to eq(time_now.to_i + 86400)
73
+ end
74
+
75
+ it "doesn't get a new token if one was supplied using 'token'" do
76
+ params[:token] = 'access-token'
77
+
78
+ expect(RestClient::Request).not_to receive(:execute).with(hash_including(
79
+ method: :post,
80
+ url: 'https://samples.auth0.com/oauth/token',
81
+ ))
82
+
83
+ expect(instance.instance_variable_get('@token')).to eq('access-token')
84
+ expect(instance.instance_variable_get('@token_expires_at')).to eq(Time.now.to_i + 3600)
85
+ end
86
+
87
+ it "doesn't get a new token if one was supplied using 'access_token'" do
88
+ params[:access_token] = 'access-token'
89
+
90
+ expect(RestClient::Request).not_to receive(:execute).with(hash_including(
91
+ method: :post,
92
+ url: 'https://samples.auth0.com/oauth/token',
93
+ ))
94
+
95
+ expect(instance.instance_variable_get('@token')).to eq('access-token')
96
+ expect(instance.instance_variable_get('@token_expires_at')).to eq(Time.now.to_i + 3600)
97
+ end
98
+
99
+ it 'can supply token_expires_at option' do
100
+ params[:token] = 'access-token'
101
+ params[:token_expires_at] = time_now.to_i + 300
102
+
103
+ expect(RestClient::Request).not_to receive(:execute).with(hash_including(
104
+ method: :post,
105
+ url: 'https://samples.auth0.com/oauth/token',
106
+ ))
107
+
108
+ expect(instance.instance_variable_get('@token')).to eq('access-token')
109
+ expect(instance.instance_variable_get('@token_expires_at')).to eq(time_now.to_i + 300)
110
+ end
111
+
112
+ it 'throws if no token or credentials were given' do
113
+ params[:client_id] = 'test-client-id'
114
+ expect { instance }.to raise_error(Auth0::InvalidCredentials)
35
115
  end
36
116
  end
37
117
  end
@@ -0,0 +1,125 @@
1
+ require 'spec_helper'
2
+ require 'timecop'
3
+
4
+ describe Auth0::Mixins::TokenManagement do
5
+ let(:client_id) { 'test-client-id' }
6
+ let(:client_secret) { 'test-client-secret' }
7
+ let(:api_identifier) { 'test-audience' }
8
+ let(:domain) { 'samples.auth0.com' }
9
+
10
+ let(:payload) { {
11
+ grant_type: 'client_credentials',
12
+ client_id: client_id,
13
+ client_secret: client_secret,
14
+ audience: api_identifier
15
+ } }
16
+
17
+ let(:params) { {
18
+ domain: domain,
19
+ client_id: client_id,
20
+ client_secret: client_secret,
21
+ api_identifier: api_identifier
22
+ } }
23
+
24
+ let(:instance) { DummyClassForTokens.send(:include, described_class).new(params) }
25
+ let(:time_now) { Time.now }
26
+
27
+ before :each do
28
+ Timecop.freeze(time_now)
29
+ end
30
+
31
+ after :each do
32
+ Timecop.return
33
+ end
34
+
35
+ context 'get_token' do
36
+ it 'renews the token if there is no token set' do
37
+ expect(RestClient::Request).to receive(:execute).with(hash_including(
38
+ method: :post,
39
+ url: 'https://samples.auth0.com/oauth/token',
40
+ payload: payload.to_json
41
+ ))
42
+ .and_return(StubResponse.new({
43
+ "access_token" => "test",
44
+ "expires_in" => 86400},
45
+ true,
46
+ 200))
47
+
48
+ instance.send(:get_token)
49
+
50
+ expect(instance.instance_variable_get('@token')).to eq('test')
51
+ expect(instance.instance_variable_get('@token_expires_at')).to eq(time_now.to_i + 86400)
52
+ end
53
+
54
+ it 'does not renew the token if the expiry time has not been reached' do
55
+ params[:token] = 'test-token'
56
+ params[:token_expires_at] = time_now.to_i + 86400
57
+
58
+ expect(RestClient::Request).not_to receive(:execute).with(hash_including(
59
+ method: :post,
60
+ url: 'https://samples.auth0.com/oauth/token',
61
+ ))
62
+
63
+ instance.send(:get_token)
64
+
65
+ expect(instance.instance_variable_get('@token')).to eq('test-token')
66
+ expect(instance.instance_variable_get('@token_expires_at')).to eq(time_now.to_i + 86400)
67
+ end
68
+
69
+ it 'renews the token if within 10 seconds of the expiry' do
70
+ params[:token] = 'test-token'
71
+ params[:token_expires_at] = time_now.to_i + 5
72
+
73
+ expect(RestClient::Request).to receive(:execute).with(hash_including(
74
+ method: :post,
75
+ url: 'https://samples.auth0.com/oauth/token',
76
+ payload: payload.to_json
77
+ ))
78
+ .and_return(StubResponse.new({
79
+ "access_token" => "renewed_token",
80
+ "expires_in" => 86400},
81
+ true,
82
+ 200))
83
+
84
+ instance.send(:get_token)
85
+
86
+ expect(instance.instance_variable_get('@token')).to eq('renewed_token')
87
+ expect(instance.instance_variable_get('@token_expires_at')).to eq(time_now.to_i + 86400)
88
+ end
89
+
90
+ it 'renews the token if past the expiry' do
91
+ params[:token] = 'test-token'
92
+ params[:token_expires_at] = time_now.to_i - 10
93
+
94
+ expect(RestClient::Request).to receive(:execute).with(hash_including(
95
+ method: :post,
96
+ url: 'https://samples.auth0.com/oauth/token',
97
+ payload: payload.to_json
98
+ ))
99
+ .and_return(StubResponse.new({
100
+ "access_token" => "renewed_token",
101
+ "expires_in" => 86400},
102
+ true,
103
+ 200))
104
+
105
+ instance.send(:get_token)
106
+
107
+ expect(instance.instance_variable_get('@token')).to eq('renewed_token')
108
+ expect(instance.instance_variable_get('@token_expires_at')).to eq(time_now.to_i + 86400)
109
+ end
110
+
111
+ it 'does not renew existing token if no token_expires_at' do
112
+ params[:token] = 'test-token'
113
+
114
+ expect(RestClient::Request).not_to receive(:execute).with(hash_including(
115
+ method: :post,
116
+ url: 'https://samples.auth0.com/oauth/token',
117
+ ))
118
+
119
+ instance.send(:get_token)
120
+
121
+ expect(instance.instance_variable_get('@token')).to eq('test-token')
122
+ expect(instance.instance_variable_get('@token_expires_at')).to be_nil
123
+ end
124
+ end
125
+ end
data/spec/spec_helper.rb CHANGED
@@ -62,7 +62,7 @@ rescue RSpec::Expectations::ExpectationNotMetError => e
62
62
  end
63
63
 
64
64
  def entity_suffix
65
- 'rubytest'
65
+ 'rubytest-210908'
66
66
  end
67
67
 
68
68
  puts "Entity suffix is #{entity_suffix}"
@@ -1,4 +1,5 @@
1
1
  class DummyClassForProxy
2
2
  include Auth0::Mixins::HTTPProxy
3
3
  include Auth0::Mixins::Headers
4
+ include Auth0::Mixins::TokenManagement
4
5
  end
@@ -0,0 +1,17 @@
1
+ class DummyClassForTokens
2
+ include Auth0::Mixins::HTTPProxy
3
+ include Auth0::Mixins::Headers
4
+ include Auth0::Mixins::TokenManagement
5
+ include Auth0::Mixins::Initializer
6
+
7
+ def initialize(config)
8
+ extend Auth0::Api::AuthenticationEndpoints
9
+ @client_id = config[:client_id]
10
+ @client_secret = config[:client_secret]
11
+ @audience = config[:api_identifier]
12
+ @domain = config[:domain]
13
+ @base_uri = "https://#{@domain}"
14
+ @token = config[:token]
15
+ @token_expires_at = config[:token_expires_at]
16
+ end
17
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auth0
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.5.0
4
+ version: 5.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Auth0
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2021-08-07 00:00:00.000000000 Z
14
+ date: 2021-10-21 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rest-client
@@ -19,14 +19,14 @@ dependencies:
19
19
  requirements:
20
20
  - - "~>"
21
21
  - !ruby/object:Gem::Version
22
- version: 2.0.2
22
+ version: '2.1'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: 2.0.2
29
+ version: '2.1'
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: jwt
32
32
  requirement: !ruby/object:Gem::Requirement
@@ -369,6 +369,7 @@ files:
369
369
  - lib/auth0/algorithm.rb
370
370
  - lib/auth0/api/authentication_endpoints.rb
371
371
  - lib/auth0/api/v2.rb
372
+ - lib/auth0/api/v2/actions.rb
372
373
  - lib/auth0/api/v2/anomaly.rb
373
374
  - lib/auth0/api/v2/blacklists.rb
374
375
  - lib/auth0/api/v2/branding.rb
@@ -377,6 +378,7 @@ files:
377
378
  - lib/auth0/api/v2/connections.rb
378
379
  - lib/auth0/api/v2/device_credentials.rb
379
380
  - lib/auth0/api/v2/emails.rb
381
+ - lib/auth0/api/v2/grants.rb
380
382
  - lib/auth0/api/v2/guardian.rb
381
383
  - lib/auth0/api/v2/jobs.rb
382
384
  - lib/auth0/api/v2/log_streams.rb
@@ -401,6 +403,7 @@ files:
401
403
  - lib/auth0/mixins/httpproxy.rb
402
404
  - lib/auth0/mixins/initializer.rb
403
405
  - lib/auth0/mixins/permission_struct.rb
406
+ - lib/auth0/mixins/token_management.rb
404
407
  - lib/auth0/mixins/validation.rb
405
408
  - lib/auth0/version.rb
406
409
  - lib/auth0_client.rb
@@ -417,12 +420,9 @@ files:
417
420
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_wsfed_metadata/should_retrieve_WSFED_metadata.yml
418
421
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/create_test_user.yml
419
422
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/delete_test_user.yml
420
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_check_if_ip_is_blocked/should_return_200_response_code.yml
421
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_remove_ip_block/should_remove_an_IP_successfully.yml
422
423
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_add_token_to_blacklist/should_add_a_token_to_the_blacklist.yml
423
424
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_blacklisted_tokens/should_get_the_added_token_from_the_blacklist.yml
424
425
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_at_least_1_result.yml
425
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_first_page_of_one_result.yml
426
426
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_test_client_grant.yml
427
427
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_delete_client_grant/should_delete_the_test_client_grant.yml
428
428
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_patch_client_grant/should_update_the_test_client_grant.yml
@@ -454,13 +454,8 @@ files:
454
454
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_update_connection/should_update_the_connection.yml
455
455
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_connection.yml
456
456
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_user.yml
457
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_delete_device_credential/should_delete_the_test_credential_without_an_error.yml
458
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/_filter_by_type/should_exclude_the_test_credential.yml
459
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_have_at_least_1_entry.yml
460
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_include_the_test_credential.yml
461
457
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_credential.yml
462
458
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_user.yml
463
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_credential.yml
464
459
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_user.yml
465
460
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_configure_provider/should_configure_a_new_email_provider.yml
466
461
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_delete_the_existing_email_provider_without_an_error.yml
@@ -574,12 +569,10 @@ files:
574
569
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_api.yml
575
570
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_role.yml
576
571
  - spec/integration/lib/auth0/api/api_authentication_spec.rb
577
- - spec/integration/lib/auth0/api/v2/api_anomaly_spec.rb
578
572
  - spec/integration/lib/auth0/api/v2/api_blacklist_spec.rb
579
573
  - spec/integration/lib/auth0/api/v2/api_client_grants_spec.rb
580
574
  - spec/integration/lib/auth0/api/v2/api_clients_spec.rb
581
575
  - spec/integration/lib/auth0/api/v2/api_connections_spec.rb
582
- - spec/integration/lib/auth0/api/v2/api_device_credentials_spec.rb
583
576
  - spec/integration/lib/auth0/api/v2/api_email_spec.rb
584
577
  - spec/integration/lib/auth0/api/v2/api_jobs_spec.rb
585
578
  - spec/integration/lib/auth0/api/v2/api_logs_spec.rb
@@ -592,6 +585,7 @@ files:
592
585
  - spec/integration/lib/auth0/api/v2/api_user_blocks_spec.rb
593
586
  - spec/integration/lib/auth0/api/v2/api_users_spec.rb
594
587
  - spec/integration/lib/auth0/auth0_client_spec.rb
588
+ - spec/lib/auth0/api/v2/actions_spec.rb
595
589
  - spec/lib/auth0/api/v2/anomaly_spec.rb
596
590
  - spec/lib/auth0/api/v2/blacklists_spec.rb
597
591
  - spec/lib/auth0/api/v2/branding_spec.rb
@@ -600,6 +594,7 @@ files:
600
594
  - spec/lib/auth0/api/v2/connections_spec.rb
601
595
  - spec/lib/auth0/api/v2/device_credentials_spec.rb
602
596
  - spec/lib/auth0/api/v2/emails_spec.rb
597
+ - spec/lib/auth0/api/v2/grants_spec.rb
603
598
  - spec/lib/auth0/api/v2/guardian_spec.rb
604
599
  - spec/lib/auth0/api/v2/jobs_spec.rb
605
600
  - spec/lib/auth0/api/v2/log_streams_spec.rb
@@ -618,12 +613,14 @@ files:
618
613
  - spec/lib/auth0/client_spec.rb
619
614
  - spec/lib/auth0/mixins/httpproxy_spec.rb
620
615
  - spec/lib/auth0/mixins/initializer_spec.rb
616
+ - spec/lib/auth0/mixins/token_management_spec.rb
621
617
  - spec/lib/auth0/mixins/validation_spec.rb
622
618
  - spec/spec_helper.rb
623
619
  - spec/support/credentials.rb
624
620
  - spec/support/dummy_class.rb
625
621
  - spec/support/dummy_class_for_proxy.rb
626
622
  - spec/support/dummy_class_for_restclient.rb
623
+ - spec/support/dummy_class_for_tokens.rb
627
624
  - spec/support/import_users.json
628
625
  - spec/support/stub_response.rb
629
626
  homepage: https://github.com/auth0/ruby-auth0
@@ -645,7 +642,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
645
642
  - !ruby/object:Gem::Version
646
643
  version: '0'
647
644
  requirements: []
648
- rubygems_version: 3.2.16
645
+ rubygems_version: 3.1.4
649
646
  signing_key:
650
647
  specification_version: 4
651
648
  summary: Auth0 API Client
@@ -662,12 +659,9 @@ test_files:
662
659
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_wsfed_metadata/should_retrieve_WSFED_metadata.yml
663
660
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/create_test_user.yml
664
661
  - spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/delete_test_user.yml
665
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_check_if_ip_is_blocked/should_return_200_response_code.yml
666
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_remove_ip_block/should_remove_an_IP_successfully.yml
667
662
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_add_token_to_blacklist/should_add_a_token_to_the_blacklist.yml
668
663
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_blacklisted_tokens/should_get_the_added_token_from_the_blacklist.yml
669
664
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_at_least_1_result.yml
670
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_first_page_of_one_result.yml
671
665
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_test_client_grant.yml
672
666
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_delete_client_grant/should_delete_the_test_client_grant.yml
673
667
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_patch_client_grant/should_update_the_test_client_grant.yml
@@ -699,13 +693,8 @@ test_files:
699
693
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_update_connection/should_update_the_connection.yml
700
694
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_connection.yml
701
695
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_user.yml
702
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_delete_device_credential/should_delete_the_test_credential_without_an_error.yml
703
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/_filter_by_type/should_exclude_the_test_credential.yml
704
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_have_at_least_1_entry.yml
705
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_include_the_test_credential.yml
706
696
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_credential.yml
707
697
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_user.yml
708
- - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_credential.yml
709
698
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_user.yml
710
699
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_configure_provider/should_configure_a_new_email_provider.yml
711
700
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_delete_the_existing_email_provider_without_an_error.yml
@@ -819,12 +808,10 @@ test_files:
819
808
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_api.yml
820
809
  - spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_role.yml
821
810
  - spec/integration/lib/auth0/api/api_authentication_spec.rb
822
- - spec/integration/lib/auth0/api/v2/api_anomaly_spec.rb
823
811
  - spec/integration/lib/auth0/api/v2/api_blacklist_spec.rb
824
812
  - spec/integration/lib/auth0/api/v2/api_client_grants_spec.rb
825
813
  - spec/integration/lib/auth0/api/v2/api_clients_spec.rb
826
814
  - spec/integration/lib/auth0/api/v2/api_connections_spec.rb
827
- - spec/integration/lib/auth0/api/v2/api_device_credentials_spec.rb
828
815
  - spec/integration/lib/auth0/api/v2/api_email_spec.rb
829
816
  - spec/integration/lib/auth0/api/v2/api_jobs_spec.rb
830
817
  - spec/integration/lib/auth0/api/v2/api_logs_spec.rb
@@ -837,6 +824,7 @@ test_files:
837
824
  - spec/integration/lib/auth0/api/v2/api_user_blocks_spec.rb
838
825
  - spec/integration/lib/auth0/api/v2/api_users_spec.rb
839
826
  - spec/integration/lib/auth0/auth0_client_spec.rb
827
+ - spec/lib/auth0/api/v2/actions_spec.rb
840
828
  - spec/lib/auth0/api/v2/anomaly_spec.rb
841
829
  - spec/lib/auth0/api/v2/blacklists_spec.rb
842
830
  - spec/lib/auth0/api/v2/branding_spec.rb
@@ -845,6 +833,7 @@ test_files:
845
833
  - spec/lib/auth0/api/v2/connections_spec.rb
846
834
  - spec/lib/auth0/api/v2/device_credentials_spec.rb
847
835
  - spec/lib/auth0/api/v2/emails_spec.rb
836
+ - spec/lib/auth0/api/v2/grants_spec.rb
848
837
  - spec/lib/auth0/api/v2/guardian_spec.rb
849
838
  - spec/lib/auth0/api/v2/jobs_spec.rb
850
839
  - spec/lib/auth0/api/v2/log_streams_spec.rb
@@ -863,11 +852,13 @@ test_files:
863
852
  - spec/lib/auth0/client_spec.rb
864
853
  - spec/lib/auth0/mixins/httpproxy_spec.rb
865
854
  - spec/lib/auth0/mixins/initializer_spec.rb
855
+ - spec/lib/auth0/mixins/token_management_spec.rb
866
856
  - spec/lib/auth0/mixins/validation_spec.rb
867
857
  - spec/spec_helper.rb
868
858
  - spec/support/credentials.rb
869
859
  - spec/support/dummy_class.rb
870
860
  - spec/support/dummy_class_for_proxy.rb
871
861
  - spec/support/dummy_class_for_restclient.rb
862
+ - spec/support/dummy_class_for_tokens.rb
872
863
  - spec/support/import_users.json
873
864
  - spec/support/stub_response.rb
@@ -1,65 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/anomaly/blocks/ips/192.0.2.0
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Accept:
11
- - "*/*"
12
- Accept-Encoding:
13
- - gzip, deflate
14
- User-Agent:
15
- - rest-client/2.0.2 (darwin18.6.0 x86_64) ruby/2.6.3p62
16
- Content-Type:
17
- - application/json
18
- Auth0-Client:
19
- - eyJuYW1lIjoicnVieS1hdXRoMCIsInZlcnNpb24iOiI0LjUuMCJ9
20
- Authorization:
21
- - Bearer API_TOKEN
22
- Host:
23
- - auth0-sdk-tests.auth0.com
24
- response:
25
- status:
26
- code: 200
27
- message: OK
28
- headers:
29
- Date:
30
- - Sat, 06 Jul 2019 23:02:59 GMT
31
- Content-Type:
32
- - application/json; charset=utf-8
33
- Transfer-Encoding:
34
- - chunked
35
- Connection:
36
- - keep-alive
37
- Ot-Tracer-Spanid:
38
- - '0539a861079ec5ad'
39
- Ot-Tracer-Traceid:
40
- - 14cbee1b1f015043
41
- Ot-Tracer-Sampled:
42
- - 'true'
43
- X-Ratelimit-Limit:
44
- - '10'
45
- X-Ratelimit-Remaining:
46
- - '9'
47
- X-Ratelimit-Reset:
48
- - '1562454181'
49
- Vary:
50
- - origin,accept-encoding
51
- Cache-Control:
52
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
53
- Content-Encoding:
54
- - gzip
55
- Strict-Transport-Security:
56
- - max-age=15724800
57
- X-Robots-Tag:
58
- - noindex, nofollow, nosnippet, noarchive
59
- body:
60
- encoding: ASCII-8BIT
61
- string: !binary |-
62
- H4sIAAAAAAAAA6uuBQBDv6ajAgAAAA==
63
- http_version:
64
- recorded_at: Sat, 06 Jul 2019 23:02:59 GMT
65
- recorded_with: VCR 4.0.0
@@ -1,60 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: delete
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/anomaly/blocks/ips/192.0.2.0
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Accept:
11
- - "*/*"
12
- Accept-Encoding:
13
- - gzip, deflate
14
- User-Agent:
15
- - rest-client/2.0.2 (darwin18.6.0 x86_64) ruby/2.6.3p62
16
- Content-Type:
17
- - application/json
18
- Auth0-Client:
19
- - eyJuYW1lIjoicnVieS1hdXRoMCIsInZlcnNpb24iOiI0LjUuMCJ9
20
- Authorization:
21
- - Bearer API_TOKEN
22
- Host:
23
- - auth0-sdk-tests.auth0.com
24
- response:
25
- status:
26
- code: 204
27
- message: No Content
28
- headers:
29
- Date:
30
- - Sat, 06 Jul 2019 23:04:30 GMT
31
- Content-Type:
32
- - application/json; charset=utf-8
33
- Connection:
34
- - keep-alive
35
- Ot-Tracer-Spanid:
36
- - 22e9910f2e3935b1
37
- Ot-Tracer-Traceid:
38
- - 2eef28c7699ee2f2
39
- Ot-Tracer-Sampled:
40
- - 'true'
41
- X-Ratelimit-Limit:
42
- - '10'
43
- X-Ratelimit-Remaining:
44
- - '9'
45
- X-Ratelimit-Reset:
46
- - '1562454271'
47
- Vary:
48
- - origin,accept-encoding
49
- Cache-Control:
50
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
51
- Strict-Transport-Security:
52
- - max-age=15724800
53
- X-Robots-Tag:
54
- - noindex, nofollow, nosnippet, noarchive
55
- body:
56
- encoding: UTF-8
57
- string: ''
58
- http_version:
59
- recorded_at: Sat, 06 Jul 2019 23:04:30 GMT
60
- recorded_with: VCR 4.0.0
@@ -1,66 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://auth0-sdk-tests.auth0.com/api/v2/client-grants?page=0&per_page=1
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- Accept:
11
- - "*/*"
12
- Accept-Encoding:
13
- - gzip, deflate
14
- User-Agent:
15
- - Ruby/2.3.1
16
- Content-Type:
17
- - application/json
18
- Auth0-Client:
19
- - eyJuYW1lIjoicnVieS1hdXRoMCIsInZlcnNpb24iOiI0LjUuMCJ9
20
- Authorization:
21
- - Bearer API_TOKEN
22
- Host:
23
- - auth0-sdk-tests.auth0.com
24
- response:
25
- status:
26
- code: 200
27
- message: OK
28
- headers:
29
- Date:
30
- - Fri, 05 Oct 2018 21:12:29 GMT
31
- Content-Type:
32
- - application/json; charset=utf-8
33
- Transfer-Encoding:
34
- - chunked
35
- Connection:
36
- - keep-alive
37
- Link:
38
- - <http://auth0-sdk-tests.auth0.com/api/v2/client-grants?page=0&per_page=1>;
39
- rel="first", <http://auth0-sdk-tests.auth0.com/api/v2/client-grants?page=0&per_page=1>;
40
- rel="last"
41
- X-Ratelimit-Limit:
42
- - '10'
43
- X-Ratelimit-Remaining:
44
- - '6'
45
- X-Ratelimit-Reset:
46
- - '1538773952'
47
- Vary:
48
- - origin,accept-encoding
49
- Cache-Control:
50
- - private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
51
- Content-Encoding:
52
- - gzip
53
- Strict-Transport-Security:
54
- - max-age=15724800
55
- X-Robots-Tag:
56
- - noindex, nofollow, nosnippet, noarchive
57
- body:
58
- encoding: ASCII-8BIT
59
- string: !binary |-
60
- H4sIAAAAAAAAAyXL0QqCMBhA4Xf5r9OlBLFdViOYkAXRxURkbSOnqaPNiKJ3
61
- b9rlge8UHzAKCMjbo2rYvj+yJDE5vjYyNbAAeTe699VM6uzV4PeGC3XIOsYz
62
- 3G5Xu3zN6enS5vRMAxejCl7qSXtvHUFIjL5eRk61kdfOu3juWA4dEtagZ4rC
63
- 5uRgw1PARMi/ym/5A8+rwz2cAAAA
64
- http_version:
65
- recorded_at: Fri, 05 Oct 2018 21:12:29 GMT
66
- recorded_with: VCR 4.0.0