azure_mgmt_security 0.18.2 → 0.19.0

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 (322) hide show
  1. checksums.yaml +4 -4
  2. data/lib/2015-06-01-preview/generated/azure_mgmt_security.rb +34 -29
  3. data/lib/2015-06-01-preview/generated/azure_mgmt_security/adaptive_application_controls.rb +81 -0
  4. data/lib/2015-06-01-preview/generated/azure_mgmt_security/alerts.rb +186 -28
  5. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/app_whitelisting_group.rb +13 -1
  6. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/app_whitelisting_put_group_data.rb +17 -1
  7. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  8. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/etag.rb +48 -0
  9. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/jit_network_access_policy_initiate_request.rb +11 -0
  10. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/jit_network_access_request.rb +11 -0
  11. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/protection_mode.rb +80 -0
  12. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/tags.rb +55 -0
  13. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  14. data/lib/2015-06-01-preview/generated/azure_mgmt_security/models/vm_recommendation.rb +12 -0
  15. data/lib/2015-06-01-preview/generated/azure_mgmt_security/security_center.rb +1 -1
  16. data/lib/2017-08-01-preview/generated/azure_mgmt_security.rb +48 -23
  17. data/lib/2017-08-01-preview/generated/azure_mgmt_security/advanced_threat_protection.rb +4 -2
  18. data/lib/2017-08-01-preview/generated/azure_mgmt_security/compliances.rb +3 -2
  19. data/lib/2017-08-01-preview/generated/azure_mgmt_security/device_security_groups.rb +54 -38
  20. data/lib/2017-08-01-preview/generated/azure_mgmt_security/information_protection_policies.rb +24 -8
  21. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/active_connections_not_in_allowed_range.rb +100 -0
  22. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/allowlist_custom_alert_rule.rb +9 -2
  23. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/amqp_c2dmessages_not_in_allowed_range.rb +101 -0
  24. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/amqp_c2drejected_messages_not_in_allowed_range.rb +101 -0
  25. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/amqp_d2cmessages_not_in_allowed_range.rb +101 -0
  26. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  27. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/connection_to_ip_not_allowed.rb +102 -0
  28. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/custom_alert_rule.rb +36 -13
  29. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/denylist_custom_alert_rule.rb +9 -2
  30. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/device_security_group.rb +8 -8
  31. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/direct_method_invokes_not_in_allowed_range.rb +100 -0
  32. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/etag.rb +48 -0
  33. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/failed_local_logins_not_in_allowed_range.rb +100 -0
  34. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/file_uploads_not_in_allowed_range.rb +100 -0
  35. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/http_c2dmessages_not_in_allowed_range.rb +101 -0
  36. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/http_c2drejected_messages_not_in_allowed_range.rb +101 -0
  37. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/http_d2cmessages_not_in_allowed_range.rb +101 -0
  38. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/information_protection_policy.rb +12 -0
  39. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/information_type.rb +13 -2
  40. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/kind.rb +46 -0
  41. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/list_custom_alert_rule.rb +9 -2
  42. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/local_user_not_allowed.rb +102 -0
  43. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/mqtt_c2dmessages_not_in_allowed_range.rb +101 -0
  44. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/mqtt_c2drejected_messages_not_in_allowed_range.rb +101 -0
  45. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/mqtt_d2cmessages_not_in_allowed_range.rb +101 -0
  46. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/process_not_allowed.rb +102 -0
  47. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/queue_purges_not_in_allowed_range.rb +100 -0
  48. data/lib/{2019-01-01/generated/azure_mgmt_security/models/setting_kind.rb → 2017-08-01-preview/generated/azure_mgmt_security/models/rank.rb} +8 -5
  49. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/sensitivity_label.rb +26 -2
  50. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/tags.rb +55 -0
  51. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/threshold_custom_alert_rule.rb +8 -1
  52. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/time_window_custom_alert_rule.rb +6 -17
  53. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  54. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/twin_updates_not_in_allowed_range.rb +100 -0
  55. data/lib/2017-08-01-preview/generated/azure_mgmt_security/models/unauthorized_operations_not_in_allowed_range.rb +100 -0
  56. data/lib/2017-08-01-preview/generated/azure_mgmt_security/security_center.rb +1 -1
  57. data/lib/2017-08-01/generated/azure_mgmt_security.rb +5 -0
  58. data/lib/2017-08-01/generated/azure_mgmt_security/compliance_results.rb +3 -2
  59. data/lib/2017-08-01/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  60. data/lib/2017-08-01/generated/azure_mgmt_security/models/etag.rb +48 -0
  61. data/lib/2017-08-01/generated/azure_mgmt_security/models/kind.rb +46 -0
  62. data/lib/2017-08-01/generated/azure_mgmt_security/models/tags.rb +55 -0
  63. data/lib/2017-08-01/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  64. data/lib/2017-08-01/generated/azure_mgmt_security/security_center.rb +1 -1
  65. data/lib/2018-06-01/generated/azure_mgmt_security.rb +5 -0
  66. data/lib/2018-06-01/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  67. data/lib/2018-06-01/generated/azure_mgmt_security/models/etag.rb +48 -0
  68. data/lib/2018-06-01/generated/azure_mgmt_security/models/kind.rb +46 -0
  69. data/lib/2018-06-01/generated/azure_mgmt_security/models/pricing.rb +4 -1
  70. data/lib/2018-06-01/generated/azure_mgmt_security/models/pricing_list.rb +1 -1
  71. data/lib/2018-06-01/generated/azure_mgmt_security/models/tags.rb +55 -0
  72. data/lib/2018-06-01/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  73. data/lib/2018-06-01/generated/azure_mgmt_security/pricings.rb +9 -36
  74. data/lib/2018-06-01/generated/azure_mgmt_security/security_center.rb +1 -1
  75. data/lib/2019-01-01-preview/generated/azure_mgmt_security.rb +34 -5
  76. data/lib/2019-01-01-preview/generated/azure_mgmt_security/alerts_suppression_rules.rb +514 -0
  77. data/lib/2019-01-01-preview/generated/azure_mgmt_security/assessments.rb +555 -0
  78. data/lib/2019-01-01-preview/generated/azure_mgmt_security/assessments_metadata.rb +311 -0
  79. data/lib/2019-01-01-preview/generated/azure_mgmt_security/assessments_metadata_subscription.rb +513 -0
  80. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/alerts_suppression_rule.rb +146 -0
  81. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/alerts_suppression_rules_list.rb +99 -0
  82. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/assessment_links.rb +47 -0
  83. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/assessment_status.rb +71 -0
  84. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/assessment_status_code.rb +17 -0
  85. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/assessment_type.rb +17 -0
  86. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/azure_resource_details.rb +62 -0
  87. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  88. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/category.rb +19 -0
  89. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/etag.rb +48 -0
  90. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/expand_enum.rb +16 -0
  91. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/implementation_effort.rb +17 -0
  92. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/kind.rb +46 -0
  93. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/on_premise_resource_details.rb +95 -0
  94. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/on_premise_sql_resource_details.rb +104 -0
  95. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/resource_details.rb +48 -0
  96. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/rule_state.rb +17 -0
  97. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/scope_element.rb +65 -0
  98. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/security_assessment.rb +132 -0
  99. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/security_assessment_list.rb +101 -0
  100. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/security_assessment_metadata.rb +209 -0
  101. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/security_assessment_metadata_list.rb +100 -0
  102. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/severity.rb +17 -0
  103. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/suppression_alerts_scope.rb +57 -0
  104. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/tags.rb +55 -0
  105. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/threats.rb +22 -0
  106. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  107. data/lib/2019-01-01-preview/generated/azure_mgmt_security/models/user_impact.rb +17 -0
  108. data/lib/2019-01-01-preview/generated/azure_mgmt_security/security_center.rb +17 -5
  109. data/lib/2019-01-01/generated/azure_mgmt_security.rb +9 -5
  110. data/lib/2019-01-01/generated/azure_mgmt_security/alerts.rb +266 -60
  111. data/lib/2019-01-01/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  112. data/lib/2019-01-01/generated/azure_mgmt_security/models/{data_export_setting.rb → data_export_settings.rb} +11 -4
  113. data/lib/2019-01-01/generated/azure_mgmt_security/models/etag.rb +48 -0
  114. data/lib/2019-01-01/generated/azure_mgmt_security/models/kind.rb +46 -0
  115. data/lib/2019-01-01/generated/azure_mgmt_security/models/setting.rb +7 -0
  116. data/lib/2019-01-01/generated/azure_mgmt_security/models/setting_resource.rb +7 -11
  117. data/lib/2019-01-01/generated/azure_mgmt_security/models/tags.rb +55 -0
  118. data/lib/2019-01-01/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  119. data/lib/2019-01-01/generated/azure_mgmt_security/security_center.rb +1 -1
  120. data/lib/2019-08-01/generated/azure_mgmt_security.rb +36 -21
  121. data/lib/2019-08-01/generated/azure_mgmt_security/{io_tsecurity_solutions_analytics_aggregated_alert.rb → iot_alert_types.rb} +47 -40
  122. data/lib/2019-08-01/generated/azure_mgmt_security/iot_alerts.rb +375 -0
  123. data/lib/2019-08-01/generated/azure_mgmt_security/{io_tsecurity_solutions_analytics_recommendations.rb → iot_recommendation_types.rb} +52 -64
  124. data/lib/2019-08-01/generated/azure_mgmt_security/iot_recommendations.rb +360 -0
  125. data/lib/2019-08-01/generated/azure_mgmt_security/iot_security_solution.rb +464 -32
  126. data/lib/2019-08-01/generated/azure_mgmt_security/{io_tsecurity_solutions_analytics.rb → iot_security_solution_analytics.rb} +24 -24
  127. data/lib/{2019-01-01-preview/generated/azure_mgmt_security/server_vulnerability_assessment_operations.rb → 2019-08-01/generated/azure_mgmt_security/iot_security_solutions_analytics_aggregated_alert.rb} +133 -143
  128. data/lib/2019-08-01/generated/azure_mgmt_security/iot_security_solutions_analytics_recommendation.rb +364 -0
  129. data/lib/2019-08-01/generated/azure_mgmt_security/models/alert_intent.rb +30 -0
  130. data/lib/2019-08-01/generated/azure_mgmt_security/models/alert_severity.rb +18 -0
  131. data/lib/2019-08-01/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  132. data/lib/2019-08-01/generated/azure_mgmt_security/models/etag.rb +48 -0
  133. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_aggregated_alert.rb +40 -16
  134. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_aggregated_alert_list.rb +4 -3
  135. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_aggregated_alert_properties_top_devices_list_item.rb +74 -0
  136. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_aggregated_recommendation.rb +14 -12
  137. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_aggregated_recommendation_list.rb +4 -3
  138. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_alerted_device.rb +4 -4
  139. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_device_alert.rb +5 -5
  140. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_device_recommendation.rb +6 -6
  141. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_solution_analytics_model.rb +42 -16
  142. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_solution_analytics_model_list.rb +4 -3
  143. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_solution_analytics_model_properties_devices_metrics_item.rb +3 -2
  144. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_solution_model.rb +21 -6
  145. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_solutions_list.rb +3 -2
  146. data/lib/2019-08-01/generated/azure_mgmt_security/models/io_tseverity_metrics.rb +4 -4
  147. data/lib/2019-08-01/generated/azure_mgmt_security/models/iot_alert.rb +128 -0
  148. data/lib/2019-08-01/generated/azure_mgmt_security/models/iot_alert_list.rb +114 -0
  149. data/lib/2019-08-01/generated/azure_mgmt_security/models/iot_alert_type.rb +188 -0
  150. data/lib/2019-08-01/generated/azure_mgmt_security/models/{io_tsecurity_alerted_devices_list.rb → iot_alert_type_list.rb} +9 -10
  151. data/lib/2019-08-01/generated/azure_mgmt_security/models/iot_recommendation.rb +109 -0
  152. data/lib/2019-08-01/generated/azure_mgmt_security/models/iot_recommendation_list.rb +114 -0
  153. data/lib/2019-08-01/generated/azure_mgmt_security/models/iot_recommendation_type.rb +184 -0
  154. data/lib/{2019-01-01-preview/generated/azure_mgmt_security/models/server_vulnerability_assessments_list.rb → 2019-08-01/generated/azure_mgmt_security/models/iot_recommendation_type_list.rb} +9 -9
  155. data/lib/2019-08-01/generated/azure_mgmt_security/models/kind.rb +46 -0
  156. data/lib/2019-08-01/generated/azure_mgmt_security/models/recommendation_configuration_properties.rb +9 -7
  157. data/lib/2019-08-01/generated/azure_mgmt_security/models/recommendation_severity.rb +21 -0
  158. data/lib/2019-08-01/generated/azure_mgmt_security/models/tags.rb +55 -0
  159. data/lib/2019-08-01/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  160. data/lib/2019-08-01/generated/azure_mgmt_security/models/unmasked_ip_logging_status.rb +16 -0
  161. data/lib/2019-08-01/generated/azure_mgmt_security/models/update_iot_security_solution_data.rb +2 -2
  162. data/lib/2019-08-01/generated/azure_mgmt_security/models/user_defined_resources_properties.rb +1 -1
  163. data/lib/2019-08-01/generated/azure_mgmt_security/security_center.rb +26 -29
  164. data/lib/2020-01-01-preview/generated/azure_mgmt_security.rb +21 -7
  165. data/lib/2020-01-01-preview/generated/azure_mgmt_security/connectors.rb +504 -0
  166. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/authentication_details_properties.rb +83 -0
  167. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/authentication_provisioning_state.rb +18 -0
  168. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/auto_provision.rb +16 -0
  169. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/aw_assume_role_authentication_details_properties.rb +117 -0
  170. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/aws_creds_authentication_details_properties.rb +115 -0
  171. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/{location.rb → azure_tracked_resource_location.rb} +4 -5
  172. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/connector_setting.rb +91 -0
  173. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/connector_setting_list.rb +101 -0
  174. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/gcp_credentials_details_properties.rb +201 -0
  175. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/hybrid_compute_provisioning_state.rb +17 -0
  176. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/hybrid_compute_settings_properties.rb +112 -0
  177. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/permission_property.rb +18 -0
  178. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/proxy_server_properties.rb +58 -0
  179. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/secure_score_control_details.rb +34 -0
  180. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/secure_score_control_score.rb +17 -0
  181. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/secure_score_item.rb +33 -0
  182. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/service_principal_properties.rb +58 -0
  183. data/lib/2020-01-01-preview/generated/azure_mgmt_security/models/tracked_resource.rb +0 -1
  184. data/lib/2020-01-01-preview/generated/azure_mgmt_security/security_center.rb +5 -1
  185. data/lib/2020-01-01/generated/azure_mgmt_security.rb +57 -34
  186. data/lib/2020-01-01/generated/azure_mgmt_security/adaptive_application_controls.rb +28 -28
  187. data/lib/2020-01-01/generated/azure_mgmt_security/models/{app_whitelisting_group.rb → adaptive_application_control_group.rb} +7 -7
  188. data/lib/2020-01-01/generated/azure_mgmt_security/models/adaptive_application_control_groups.rb +56 -0
  189. data/lib/2020-01-01/generated/azure_mgmt_security/models/{app_whitelisting_issue_summary.rb → adaptive_application_control_issue_summary.rb} +7 -7
  190. data/lib/2020-01-01/generated/azure_mgmt_security/models/azure_resource_link.rb +47 -0
  191. data/lib/2020-01-01/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  192. data/lib/2020-01-01/generated/azure_mgmt_security/models/control_type.rb +16 -0
  193. data/lib/2020-01-01/generated/azure_mgmt_security/models/expand_controls_enum.rb +15 -0
  194. data/lib/2020-01-01/generated/azure_mgmt_security/models/on_premise_sql_resource_details.rb +104 -0
  195. data/lib/2020-01-01/generated/azure_mgmt_security/models/path_recommendation.rb +4 -2
  196. data/lib/2020-01-01/generated/azure_mgmt_security/models/provisioning_state.rb +17 -0
  197. data/lib/2020-01-01/generated/azure_mgmt_security/models/resource_details.rb +1 -0
  198. data/lib/2020-01-01/generated/azure_mgmt_security/models/secure_score_control_definition_item.rb +141 -0
  199. data/lib/2020-01-01/generated/azure_mgmt_security/models/secure_score_control_definition_list.rb +101 -0
  200. data/lib/2020-01-01/generated/azure_mgmt_security/models/secure_score_control_definition_source.rb +47 -0
  201. data/lib/2020-01-01/generated/azure_mgmt_security/models/secure_score_control_details.rb +187 -0
  202. data/lib/2020-01-01/generated/azure_mgmt_security/models/secure_score_control_list.rb +101 -0
  203. data/lib/2020-01-01/generated/azure_mgmt_security/models/secure_score_control_score.rb +86 -0
  204. data/lib/2020-01-01/generated/azure_mgmt_security/models/secure_score_item.rb +137 -0
  205. data/lib/2020-01-01/generated/azure_mgmt_security/models/secure_scores_list.rb +101 -0
  206. data/lib/2020-01-01/generated/azure_mgmt_security/models/security_solution.rb +130 -0
  207. data/lib/2020-01-01/generated/azure_mgmt_security/models/security_solution_list.rb +99 -0
  208. data/lib/2020-01-01/generated/azure_mgmt_security/models/security_solutions_reference_data.rb +162 -0
  209. data/lib/2020-01-01/generated/azure_mgmt_security/models/{app_whitelisting_groups.rb → security_solutions_reference_data_list.rb} +9 -9
  210. data/lib/2020-01-01/generated/azure_mgmt_security/models/tracked_resource.rb +0 -1
  211. data/lib/2020-01-01/generated/azure_mgmt_security/models/vm_recommendation.rb +1 -1
  212. data/lib/2020-01-01/generated/azure_mgmt_security/secure_score_control_definitions.rb +423 -0
  213. data/lib/2020-01-01/generated/azure_mgmt_security/secure_score_controls.rb +444 -0
  214. data/lib/2020-01-01/generated/azure_mgmt_security/secure_scores.rb +326 -0
  215. data/lib/2020-01-01/generated/azure_mgmt_security/security_center.rb +22 -1
  216. data/lib/{2019-08-01/generated/azure_mgmt_security/io_tsecurity_solutions_analytics_aggregated_alerts.rb → 2020-01-01/generated/azure_mgmt_security/security_solutions.rb} +120 -39
  217. data/lib/2020-01-01/generated/azure_mgmt_security/security_solutions_reference_data_operations.rb +200 -0
  218. data/lib/2020-07-01-preview/generated/azure_mgmt_security.rb +59 -0
  219. data/lib/{2019-01-01-preview/generated/azure_mgmt_security/models/server_vulnerability_assessment.rb → 2020-07-01-preview/generated/azure_mgmt_security/models/asc_location.rb} +11 -14
  220. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  221. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/baseline.rb +73 -0
  222. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/baseline_adjusted_result.rb +113 -0
  223. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/benchmark_reference.rb +57 -0
  224. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/etag.rb +48 -0
  225. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/kind.rb +46 -0
  226. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/query_check.rb +92 -0
  227. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/remediation.rb +87 -0
  228. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/resource.rb +80 -0
  229. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/rule_results.rb +74 -0
  230. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/rule_results_input.rb +75 -0
  231. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/rule_results_properties.rb +62 -0
  232. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/rule_severity.rb +19 -0
  233. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/rule_status.rb +17 -0
  234. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/rule_type.rb +18 -0
  235. data/lib/{2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_device_recommendations_list.rb → 2020-07-01-preview/generated/azure_mgmt_security/models/rules_results.rb} +10 -11
  236. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/rules_results_input.rb +83 -0
  237. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/scan.rb +74 -0
  238. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/scan_properties.rb +192 -0
  239. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/scan_result.rb +74 -0
  240. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/scan_result_properties.rb +133 -0
  241. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/scan_results.rb +56 -0
  242. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/scan_state.rb +18 -0
  243. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/scan_trigger_type.rb +16 -0
  244. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/scans.rb +55 -0
  245. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/tags.rb +55 -0
  246. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  247. data/lib/2020-07-01-preview/generated/azure_mgmt_security/models/va_rule.rb +146 -0
  248. data/lib/2020-07-01-preview/generated/azure_mgmt_security/module_definition.rb +9 -0
  249. data/lib/2020-07-01-preview/generated/azure_mgmt_security/security_center.rb +135 -0
  250. data/lib/2020-07-01-preview/generated/azure_mgmt_security/sql_vulnerability_assessment_baseline_rules.rb +535 -0
  251. data/lib/2020-07-01-preview/generated/azure_mgmt_security/sql_vulnerability_assessment_scan_results.rb +237 -0
  252. data/lib/2020-07-01-preview/generated/azure_mgmt_security/sql_vulnerability_assessment_scans.rb +225 -0
  253. data/lib/2020-08-06-preview/generated/azure_mgmt_security.rb +89 -0
  254. data/lib/2020-08-06-preview/generated/azure_mgmt_security/device_operations.rb +119 -0
  255. data/lib/{2019-08-01/generated/azure_mgmt_security/io_tsecurity_solutions_resource_group.rb → 2020-08-06-preview/generated/azure_mgmt_security/devices_for_hub.rb} +50 -48
  256. data/lib/{2019-08-01/generated/azure_mgmt_security/io_tsecurity_solutions.rb → 2020-08-06-preview/generated/azure_mgmt_security/devices_for_subscription.rb} +44 -33
  257. data/lib/2020-08-06-preview/generated/azure_mgmt_security/iot_alert_types.rb +203 -0
  258. data/lib/2020-08-06-preview/generated/azure_mgmt_security/iot_alerts.rb +377 -0
  259. data/lib/2020-08-06-preview/generated/azure_mgmt_security/iot_defender_settings.rb +473 -0
  260. data/lib/2020-08-06-preview/generated/azure_mgmt_security/iot_recommendation_types.rb +203 -0
  261. data/lib/2020-08-06-preview/generated/azure_mgmt_security/iot_recommendations.rb +349 -0
  262. data/lib/2020-08-06-preview/generated/azure_mgmt_security/iot_sensors.rb +511 -0
  263. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/alert_intent.rb +30 -0
  264. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/alert_severity.rb +18 -0
  265. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/asc_location.rb +73 -0
  266. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/authorization_state.rb +16 -0
  267. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/azure_tracked_resource_location.rb +46 -0
  268. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/device.rb +397 -0
  269. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/device_criticality.rb +16 -0
  270. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/device_list.rb +100 -0
  271. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/device_status.rb +16 -0
  272. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/etag.rb +48 -0
  273. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/firmware.rb +121 -0
  274. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_alert_list_model.rb +101 -0
  275. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_alert_model.rb +128 -0
  276. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_alert_type.rb +188 -0
  277. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_alert_type_list.rb +55 -0
  278. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_defender_settings_list.rb +56 -0
  279. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_defender_settings_model.rb +96 -0
  280. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_recommendation_list_model.rb +101 -0
  281. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_recommendation_model.rb +109 -0
  282. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_recommendation_type.rb +184 -0
  283. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_recommendation_type_list.rb +55 -0
  284. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_sensor.rb +73 -0
  285. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/iot_sensors_list.rb +56 -0
  286. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/ip_address.rb +95 -0
  287. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/kind.rb +46 -0
  288. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/mac_address.rb +87 -0
  289. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/mac_significance.rb +16 -0
  290. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/management_state.rb +16 -0
  291. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/network_interface.rb +79 -0
  292. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/on_premise_iot_sensor.rb +73 -0
  293. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/on_premise_iot_sensors_list.rb +56 -0
  294. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/package_download_info.rb +71 -0
  295. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/package_downloads.rb +76 -0
  296. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/package_downloads_central_manager.rb +71 -0
  297. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/package_downloads_central_manager_full.rb +71 -0
  298. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/package_downloads_central_manager_full_ovf.rb +121 -0
  299. data/lib/{2019-08-01/generated/azure_mgmt_security/models/io_tsecurity_device_alerts_list.rb → 2020-08-06-preview/generated/azure_mgmt_security/models/package_downloads_sensor.rb} +26 -24
  300. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/package_downloads_sensor_full.rb +70 -0
  301. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/package_downloads_sensor_full_ovf.rb +98 -0
  302. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/package_downloads_threat_intelligence.rb +46 -0
  303. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/programming_state.rb +16 -0
  304. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/protocol.rb +58 -0
  305. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/purdue_level.rb +17 -0
  306. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/recommendation_severity.rb +21 -0
  307. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/relation_to_ip_status.rb +16 -0
  308. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/resource.rb +80 -0
  309. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/scanning_functionality.rb +16 -0
  310. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/sensor.rb +59 -0
  311. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/site.rb +47 -0
  312. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/tags.rb +55 -0
  313. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/tracked_resource.rb +125 -0
  314. data/lib/2020-08-06-preview/generated/azure_mgmt_security/models/version_kind.rb +17 -0
  315. data/lib/2020-08-06-preview/generated/azure_mgmt_security/module_definition.rb +9 -0
  316. data/lib/2020-08-06-preview/generated/azure_mgmt_security/on_premise_iot_sensors.rb +482 -0
  317. data/lib/2020-08-06-preview/generated/azure_mgmt_security/security_center.rb +167 -0
  318. data/lib/azure_mgmt_security.rb +7 -5
  319. data/lib/profiles/latest/modules/security_profile_module.rb +851 -255
  320. data/lib/version.rb +1 -1
  321. metadata +247 -22
  322. data/lib/2019-08-01/generated/azure_mgmt_security/io_tsecurity_solutions_analytics_recommendation.rb +0 -133
@@ -0,0 +1,311 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Security::Mgmt::V2019_01_01_preview
7
+ #
8
+ # API spec for Microsoft.Security (Azure Security Center) resource provider
9
+ #
10
+ class AssessmentsMetadata
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the AssessmentsMetadata class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [SecurityCenter] reference to the SecurityCenter
22
+ attr_reader :client
23
+
24
+ #
25
+ # Get metadata information on all assessment types
26
+ #
27
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
28
+ # will be added to the HTTP request.
29
+ #
30
+ # @return [Array<SecurityAssessmentMetadata>] operation results.
31
+ #
32
+ def list(custom_headers:nil)
33
+ first_page = list_as_lazy(custom_headers:custom_headers)
34
+ first_page.get_all_items
35
+ end
36
+
37
+ #
38
+ # Get metadata information on all assessment types
39
+ #
40
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
41
+ # will be added to the HTTP request.
42
+ #
43
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
44
+ #
45
+ def list_with_http_info(custom_headers:nil)
46
+ list_async(custom_headers:custom_headers).value!
47
+ end
48
+
49
+ #
50
+ # Get metadata information on all assessment types
51
+ #
52
+ # @param [Hash{String => String}] A hash of custom headers that will be added
53
+ # to the HTTP request.
54
+ #
55
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
56
+ #
57
+ def list_async(custom_headers:nil)
58
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
59
+
60
+
61
+ request_headers = {}
62
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
63
+
64
+ # Set Headers
65
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
66
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
67
+ path_template = 'providers/Microsoft.Security/assessmentMetadata'
68
+
69
+ request_url = @base_url || @client.base_url
70
+
71
+ options = {
72
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
73
+ query_params: {'api-version' => @client.api_version},
74
+ headers: request_headers.merge(custom_headers || {}),
75
+ base_url: request_url
76
+ }
77
+ promise = @client.make_request_async(:get, path_template, options)
78
+
79
+ promise = promise.then do |result|
80
+ http_response = result.response
81
+ status_code = http_response.status
82
+ response_content = http_response.body
83
+ unless status_code == 200
84
+ error_model = JSON.load(response_content)
85
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
86
+ end
87
+
88
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
89
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
90
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
91
+ # Deserialize Response
92
+ if status_code == 200
93
+ begin
94
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
95
+ result_mapper = Azure::Security::Mgmt::V2019_01_01_preview::Models::SecurityAssessmentMetadataList.mapper()
96
+ result.body = @client.deserialize(result_mapper, parsed_response)
97
+ rescue Exception => e
98
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
99
+ end
100
+ end
101
+
102
+ result
103
+ end
104
+
105
+ promise.execute
106
+ end
107
+
108
+ #
109
+ # Get metadata information on an assessment type
110
+ #
111
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
112
+ # the assessment type
113
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
114
+ # will be added to the HTTP request.
115
+ #
116
+ # @return [SecurityAssessmentMetadata] operation results.
117
+ #
118
+ def get(assessment_metadata_name, custom_headers:nil)
119
+ response = get_async(assessment_metadata_name, custom_headers:custom_headers).value!
120
+ response.body unless response.nil?
121
+ end
122
+
123
+ #
124
+ # Get metadata information on an assessment type
125
+ #
126
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
127
+ # the assessment type
128
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
129
+ # will be added to the HTTP request.
130
+ #
131
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
132
+ #
133
+ def get_with_http_info(assessment_metadata_name, custom_headers:nil)
134
+ get_async(assessment_metadata_name, custom_headers:custom_headers).value!
135
+ end
136
+
137
+ #
138
+ # Get metadata information on an assessment type
139
+ #
140
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
141
+ # the assessment type
142
+ # @param [Hash{String => String}] A hash of custom headers that will be added
143
+ # to the HTTP request.
144
+ #
145
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
146
+ #
147
+ def get_async(assessment_metadata_name, custom_headers:nil)
148
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
149
+ fail ArgumentError, 'assessment_metadata_name is nil' if assessment_metadata_name.nil?
150
+
151
+
152
+ request_headers = {}
153
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
154
+
155
+ # Set Headers
156
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
157
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
158
+ path_template = 'providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}'
159
+
160
+ request_url = @base_url || @client.base_url
161
+
162
+ options = {
163
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
164
+ path_params: {'assessmentMetadataName' => assessment_metadata_name},
165
+ query_params: {'api-version' => @client.api_version},
166
+ headers: request_headers.merge(custom_headers || {}),
167
+ base_url: request_url
168
+ }
169
+ promise = @client.make_request_async(:get, path_template, options)
170
+
171
+ promise = promise.then do |result|
172
+ http_response = result.response
173
+ status_code = http_response.status
174
+ response_content = http_response.body
175
+ unless status_code == 200
176
+ error_model = JSON.load(response_content)
177
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
178
+ end
179
+
180
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
181
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
182
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
183
+ # Deserialize Response
184
+ if status_code == 200
185
+ begin
186
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
187
+ result_mapper = Azure::Security::Mgmt::V2019_01_01_preview::Models::SecurityAssessmentMetadata.mapper()
188
+ result.body = @client.deserialize(result_mapper, parsed_response)
189
+ rescue Exception => e
190
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
191
+ end
192
+ end
193
+
194
+ result
195
+ end
196
+
197
+ promise.execute
198
+ end
199
+
200
+ #
201
+ # Get metadata information on all assessment types
202
+ #
203
+ # @param next_page_link [String] The NextLink from the previous successful call
204
+ # to List operation.
205
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
206
+ # will be added to the HTTP request.
207
+ #
208
+ # @return [SecurityAssessmentMetadataList] operation results.
209
+ #
210
+ def list_next(next_page_link, custom_headers:nil)
211
+ response = list_next_async(next_page_link, custom_headers:custom_headers).value!
212
+ response.body unless response.nil?
213
+ end
214
+
215
+ #
216
+ # Get metadata information on all assessment types
217
+ #
218
+ # @param next_page_link [String] The NextLink from the previous successful call
219
+ # to List operation.
220
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
221
+ # will be added to the HTTP request.
222
+ #
223
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
224
+ #
225
+ def list_next_with_http_info(next_page_link, custom_headers:nil)
226
+ list_next_async(next_page_link, custom_headers:custom_headers).value!
227
+ end
228
+
229
+ #
230
+ # Get metadata information on all assessment types
231
+ #
232
+ # @param next_page_link [String] The NextLink from the previous successful call
233
+ # to List operation.
234
+ # @param [Hash{String => String}] A hash of custom headers that will be added
235
+ # to the HTTP request.
236
+ #
237
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
238
+ #
239
+ def list_next_async(next_page_link, custom_headers:nil)
240
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
241
+
242
+
243
+ request_headers = {}
244
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
245
+
246
+ # Set Headers
247
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
248
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
249
+ path_template = '{nextLink}'
250
+
251
+ request_url = @base_url || @client.base_url
252
+
253
+ options = {
254
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
255
+ skip_encoding_path_params: {'nextLink' => next_page_link},
256
+ headers: request_headers.merge(custom_headers || {}),
257
+ base_url: request_url
258
+ }
259
+ promise = @client.make_request_async(:get, path_template, options)
260
+
261
+ promise = promise.then do |result|
262
+ http_response = result.response
263
+ status_code = http_response.status
264
+ response_content = http_response.body
265
+ unless status_code == 200
266
+ error_model = JSON.load(response_content)
267
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
268
+ end
269
+
270
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
271
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
272
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
273
+ # Deserialize Response
274
+ if status_code == 200
275
+ begin
276
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
277
+ result_mapper = Azure::Security::Mgmt::V2019_01_01_preview::Models::SecurityAssessmentMetadataList.mapper()
278
+ result.body = @client.deserialize(result_mapper, parsed_response)
279
+ rescue Exception => e
280
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
281
+ end
282
+ end
283
+
284
+ result
285
+ end
286
+
287
+ promise.execute
288
+ end
289
+
290
+ #
291
+ # Get metadata information on all assessment types
292
+ #
293
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
294
+ # will be added to the HTTP request.
295
+ #
296
+ # @return [SecurityAssessmentMetadataList] which provide lazy access to pages
297
+ # of the response.
298
+ #
299
+ def list_as_lazy(custom_headers:nil)
300
+ response = list_async(custom_headers:custom_headers).value!
301
+ unless response.nil?
302
+ page = response.body
303
+ page.next_method = Proc.new do |next_page_link|
304
+ list_next_async(next_page_link, custom_headers:custom_headers)
305
+ end
306
+ page
307
+ end
308
+ end
309
+
310
+ end
311
+ end
@@ -0,0 +1,513 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Security::Mgmt::V2019_01_01_preview
7
+ #
8
+ # API spec for Microsoft.Security (Azure Security Center) resource provider
9
+ #
10
+ class AssessmentsMetadataSubscription
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the AssessmentsMetadataSubscription class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [SecurityCenter] reference to the SecurityCenter
22
+ attr_reader :client
23
+
24
+ #
25
+ # Get metadata information on all assessment types in a specific subscription
26
+ #
27
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
28
+ # will be added to the HTTP request.
29
+ #
30
+ # @return [Array<SecurityAssessmentMetadata>] operation results.
31
+ #
32
+ def list(custom_headers:nil)
33
+ first_page = list_as_lazy(custom_headers:custom_headers)
34
+ first_page.get_all_items
35
+ end
36
+
37
+ #
38
+ # Get metadata information on all assessment types in a specific subscription
39
+ #
40
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
41
+ # will be added to the HTTP request.
42
+ #
43
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
44
+ #
45
+ def list_with_http_info(custom_headers:nil)
46
+ list_async(custom_headers:custom_headers).value!
47
+ end
48
+
49
+ #
50
+ # Get metadata information on all assessment types in a specific subscription
51
+ #
52
+ # @param [Hash{String => String}] A hash of custom headers that will be added
53
+ # to the HTTP request.
54
+ #
55
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
56
+ #
57
+ def list_async(custom_headers:nil)
58
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
59
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
60
+ fail ArgumentError, "'@client.subscription_id' should satisfy the constraint - 'Pattern': '^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'" if !@client.subscription_id.nil? && @client.subscription_id.match(Regexp.new('^^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$$')).nil?
61
+
62
+
63
+ request_headers = {}
64
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
65
+
66
+ # Set Headers
67
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
68
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
69
+ path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata'
70
+
71
+ request_url = @base_url || @client.base_url
72
+
73
+ options = {
74
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
75
+ path_params: {'subscriptionId' => @client.subscription_id},
76
+ query_params: {'api-version' => @client.api_version},
77
+ headers: request_headers.merge(custom_headers || {}),
78
+ base_url: request_url
79
+ }
80
+ promise = @client.make_request_async(:get, path_template, options)
81
+
82
+ promise = promise.then do |result|
83
+ http_response = result.response
84
+ status_code = http_response.status
85
+ response_content = http_response.body
86
+ unless status_code == 200
87
+ error_model = JSON.load(response_content)
88
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
89
+ end
90
+
91
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
92
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
93
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
94
+ # Deserialize Response
95
+ if status_code == 200
96
+ begin
97
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
98
+ result_mapper = Azure::Security::Mgmt::V2019_01_01_preview::Models::SecurityAssessmentMetadataList.mapper()
99
+ result.body = @client.deserialize(result_mapper, parsed_response)
100
+ rescue Exception => e
101
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
102
+ end
103
+ end
104
+
105
+ result
106
+ end
107
+
108
+ promise.execute
109
+ end
110
+
111
+ #
112
+ # Get metadata information on an assessment type in a specific subscription
113
+ #
114
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
115
+ # the assessment type
116
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
117
+ # will be added to the HTTP request.
118
+ #
119
+ # @return [SecurityAssessmentMetadata] operation results.
120
+ #
121
+ def get(assessment_metadata_name, custom_headers:nil)
122
+ response = get_async(assessment_metadata_name, custom_headers:custom_headers).value!
123
+ response.body unless response.nil?
124
+ end
125
+
126
+ #
127
+ # Get metadata information on an assessment type in a specific subscription
128
+ #
129
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
130
+ # the assessment type
131
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
132
+ # will be added to the HTTP request.
133
+ #
134
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
135
+ #
136
+ def get_with_http_info(assessment_metadata_name, custom_headers:nil)
137
+ get_async(assessment_metadata_name, custom_headers:custom_headers).value!
138
+ end
139
+
140
+ #
141
+ # Get metadata information on an assessment type in a specific subscription
142
+ #
143
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
144
+ # the assessment type
145
+ # @param [Hash{String => String}] A hash of custom headers that will be added
146
+ # to the HTTP request.
147
+ #
148
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
149
+ #
150
+ def get_async(assessment_metadata_name, custom_headers:nil)
151
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
152
+ fail ArgumentError, 'assessment_metadata_name is nil' if assessment_metadata_name.nil?
153
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
154
+ fail ArgumentError, "'@client.subscription_id' should satisfy the constraint - 'Pattern': '^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'" if !@client.subscription_id.nil? && @client.subscription_id.match(Regexp.new('^^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$$')).nil?
155
+
156
+
157
+ request_headers = {}
158
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
159
+
160
+ # Set Headers
161
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
162
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
163
+ path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}'
164
+
165
+ request_url = @base_url || @client.base_url
166
+
167
+ options = {
168
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
169
+ path_params: {'assessmentMetadataName' => assessment_metadata_name,'subscriptionId' => @client.subscription_id},
170
+ query_params: {'api-version' => @client.api_version},
171
+ headers: request_headers.merge(custom_headers || {}),
172
+ base_url: request_url
173
+ }
174
+ promise = @client.make_request_async(:get, path_template, options)
175
+
176
+ promise = promise.then do |result|
177
+ http_response = result.response
178
+ status_code = http_response.status
179
+ response_content = http_response.body
180
+ unless status_code == 200
181
+ error_model = JSON.load(response_content)
182
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
183
+ end
184
+
185
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
186
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
187
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
188
+ # Deserialize Response
189
+ if status_code == 200
190
+ begin
191
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
192
+ result_mapper = Azure::Security::Mgmt::V2019_01_01_preview::Models::SecurityAssessmentMetadata.mapper()
193
+ result.body = @client.deserialize(result_mapper, parsed_response)
194
+ rescue Exception => e
195
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
196
+ end
197
+ end
198
+
199
+ result
200
+ end
201
+
202
+ promise.execute
203
+ end
204
+
205
+ #
206
+ # Create metadata information on an assessment type in a specific subscription
207
+ #
208
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
209
+ # the assessment type
210
+ # @param assessment_metadata [SecurityAssessmentMetadata] AssessmentMetadata
211
+ # object
212
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
213
+ # will be added to the HTTP request.
214
+ #
215
+ # @return [SecurityAssessmentMetadata] operation results.
216
+ #
217
+ def create(assessment_metadata_name, assessment_metadata, custom_headers:nil)
218
+ response = create_async(assessment_metadata_name, assessment_metadata, custom_headers:custom_headers).value!
219
+ response.body unless response.nil?
220
+ end
221
+
222
+ #
223
+ # Create metadata information on an assessment type in a specific subscription
224
+ #
225
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
226
+ # the assessment type
227
+ # @param assessment_metadata [SecurityAssessmentMetadata] AssessmentMetadata
228
+ # object
229
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
230
+ # will be added to the HTTP request.
231
+ #
232
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
233
+ #
234
+ def create_with_http_info(assessment_metadata_name, assessment_metadata, custom_headers:nil)
235
+ create_async(assessment_metadata_name, assessment_metadata, custom_headers:custom_headers).value!
236
+ end
237
+
238
+ #
239
+ # Create metadata information on an assessment type in a specific subscription
240
+ #
241
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
242
+ # the assessment type
243
+ # @param assessment_metadata [SecurityAssessmentMetadata] AssessmentMetadata
244
+ # object
245
+ # @param [Hash{String => String}] A hash of custom headers that will be added
246
+ # to the HTTP request.
247
+ #
248
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
249
+ #
250
+ def create_async(assessment_metadata_name, assessment_metadata, custom_headers:nil)
251
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
252
+ fail ArgumentError, 'assessment_metadata_name is nil' if assessment_metadata_name.nil?
253
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
254
+ fail ArgumentError, "'@client.subscription_id' should satisfy the constraint - 'Pattern': '^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'" if !@client.subscription_id.nil? && @client.subscription_id.match(Regexp.new('^^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$$')).nil?
255
+ fail ArgumentError, 'assessment_metadata is nil' if assessment_metadata.nil?
256
+
257
+
258
+ request_headers = {}
259
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
260
+
261
+ # Set Headers
262
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
263
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
264
+
265
+ # Serialize Request
266
+ request_mapper = Azure::Security::Mgmt::V2019_01_01_preview::Models::SecurityAssessmentMetadata.mapper()
267
+ request_content = @client.serialize(request_mapper, assessment_metadata)
268
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
269
+
270
+ path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}'
271
+
272
+ request_url = @base_url || @client.base_url
273
+
274
+ options = {
275
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
276
+ path_params: {'assessmentMetadataName' => assessment_metadata_name,'subscriptionId' => @client.subscription_id},
277
+ query_params: {'api-version' => @client.api_version},
278
+ body: request_content,
279
+ headers: request_headers.merge(custom_headers || {}),
280
+ base_url: request_url
281
+ }
282
+ promise = @client.make_request_async(:put, path_template, options)
283
+
284
+ promise = promise.then do |result|
285
+ http_response = result.response
286
+ status_code = http_response.status
287
+ response_content = http_response.body
288
+ unless status_code == 200
289
+ error_model = JSON.load(response_content)
290
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
291
+ end
292
+
293
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
294
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
295
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
296
+ # Deserialize Response
297
+ if status_code == 200
298
+ begin
299
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
300
+ result_mapper = Azure::Security::Mgmt::V2019_01_01_preview::Models::SecurityAssessmentMetadata.mapper()
301
+ result.body = @client.deserialize(result_mapper, parsed_response)
302
+ rescue Exception => e
303
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
304
+ end
305
+ end
306
+
307
+ result
308
+ end
309
+
310
+ promise.execute
311
+ end
312
+
313
+ #
314
+ # Delete metadata information on an assessment type in a specific subscription,
315
+ # will cause the deletion of all the assessments of that type in that
316
+ # subscription
317
+ #
318
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
319
+ # the assessment type
320
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
321
+ # will be added to the HTTP request.
322
+ #
323
+ #
324
+ def delete(assessment_metadata_name, custom_headers:nil)
325
+ response = delete_async(assessment_metadata_name, custom_headers:custom_headers).value!
326
+ nil
327
+ end
328
+
329
+ #
330
+ # Delete metadata information on an assessment type in a specific subscription,
331
+ # will cause the deletion of all the assessments of that type in that
332
+ # subscription
333
+ #
334
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
335
+ # the assessment type
336
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
337
+ # will be added to the HTTP request.
338
+ #
339
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
340
+ #
341
+ def delete_with_http_info(assessment_metadata_name, custom_headers:nil)
342
+ delete_async(assessment_metadata_name, custom_headers:custom_headers).value!
343
+ end
344
+
345
+ #
346
+ # Delete metadata information on an assessment type in a specific subscription,
347
+ # will cause the deletion of all the assessments of that type in that
348
+ # subscription
349
+ #
350
+ # @param assessment_metadata_name [String] The Assessment Key - Unique key for
351
+ # the assessment type
352
+ # @param [Hash{String => String}] A hash of custom headers that will be added
353
+ # to the HTTP request.
354
+ #
355
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
356
+ #
357
+ def delete_async(assessment_metadata_name, custom_headers:nil)
358
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
359
+ fail ArgumentError, 'assessment_metadata_name is nil' if assessment_metadata_name.nil?
360
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
361
+ fail ArgumentError, "'@client.subscription_id' should satisfy the constraint - 'Pattern': '^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$'" if !@client.subscription_id.nil? && @client.subscription_id.match(Regexp.new('^^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$$')).nil?
362
+
363
+
364
+ request_headers = {}
365
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
366
+
367
+ # Set Headers
368
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
369
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
370
+ path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}'
371
+
372
+ request_url = @base_url || @client.base_url
373
+
374
+ options = {
375
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
376
+ path_params: {'assessmentMetadataName' => assessment_metadata_name,'subscriptionId' => @client.subscription_id},
377
+ query_params: {'api-version' => @client.api_version},
378
+ headers: request_headers.merge(custom_headers || {}),
379
+ base_url: request_url
380
+ }
381
+ promise = @client.make_request_async(:delete, path_template, options)
382
+
383
+ promise = promise.then do |result|
384
+ http_response = result.response
385
+ status_code = http_response.status
386
+ response_content = http_response.body
387
+ unless status_code == 200
388
+ error_model = JSON.load(response_content)
389
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
390
+ end
391
+
392
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
393
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
394
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
395
+
396
+ result
397
+ end
398
+
399
+ promise.execute
400
+ end
401
+
402
+ #
403
+ # Get metadata information on all assessment types in a specific subscription
404
+ #
405
+ # @param next_page_link [String] The NextLink from the previous successful call
406
+ # to List operation.
407
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
408
+ # will be added to the HTTP request.
409
+ #
410
+ # @return [SecurityAssessmentMetadataList] operation results.
411
+ #
412
+ def list_next(next_page_link, custom_headers:nil)
413
+ response = list_next_async(next_page_link, custom_headers:custom_headers).value!
414
+ response.body unless response.nil?
415
+ end
416
+
417
+ #
418
+ # Get metadata information on all assessment types in a specific subscription
419
+ #
420
+ # @param next_page_link [String] The NextLink from the previous successful call
421
+ # to List operation.
422
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
423
+ # will be added to the HTTP request.
424
+ #
425
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
426
+ #
427
+ def list_next_with_http_info(next_page_link, custom_headers:nil)
428
+ list_next_async(next_page_link, custom_headers:custom_headers).value!
429
+ end
430
+
431
+ #
432
+ # Get metadata information on all assessment types in a specific subscription
433
+ #
434
+ # @param next_page_link [String] The NextLink from the previous successful call
435
+ # to List operation.
436
+ # @param [Hash{String => String}] A hash of custom headers that will be added
437
+ # to the HTTP request.
438
+ #
439
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
440
+ #
441
+ def list_next_async(next_page_link, custom_headers:nil)
442
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
443
+
444
+
445
+ request_headers = {}
446
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
447
+
448
+ # Set Headers
449
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
450
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
451
+ path_template = '{nextLink}'
452
+
453
+ request_url = @base_url || @client.base_url
454
+
455
+ options = {
456
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
457
+ skip_encoding_path_params: {'nextLink' => next_page_link},
458
+ headers: request_headers.merge(custom_headers || {}),
459
+ base_url: request_url
460
+ }
461
+ promise = @client.make_request_async(:get, path_template, options)
462
+
463
+ promise = promise.then do |result|
464
+ http_response = result.response
465
+ status_code = http_response.status
466
+ response_content = http_response.body
467
+ unless status_code == 200
468
+ error_model = JSON.load(response_content)
469
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
470
+ end
471
+
472
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
473
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
474
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
475
+ # Deserialize Response
476
+ if status_code == 200
477
+ begin
478
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
479
+ result_mapper = Azure::Security::Mgmt::V2019_01_01_preview::Models::SecurityAssessmentMetadataList.mapper()
480
+ result.body = @client.deserialize(result_mapper, parsed_response)
481
+ rescue Exception => e
482
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
483
+ end
484
+ end
485
+
486
+ result
487
+ end
488
+
489
+ promise.execute
490
+ end
491
+
492
+ #
493
+ # Get metadata information on all assessment types in a specific subscription
494
+ #
495
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
496
+ # will be added to the HTTP request.
497
+ #
498
+ # @return [SecurityAssessmentMetadataList] which provide lazy access to pages
499
+ # of the response.
500
+ #
501
+ def list_as_lazy(custom_headers:nil)
502
+ response = list_async(custom_headers:custom_headers).value!
503
+ unless response.nil?
504
+ page = response.body
505
+ page.next_method = Proc.new do |next_page_link|
506
+ list_next_async(next_page_link, custom_headers:custom_headers)
507
+ end
508
+ page
509
+ end
510
+ end
511
+
512
+ end
513
+ end